pthread_mutexattr_setprioceiling Subroutine


Sets the value of the prioceiling attribute of a mutex attributes


Threads Library (libpthreads.a)



int pthread_mutexattr_setprioceiling (attr, prioceiling)
pthread_mutexattr_t *attr;
int prioceiling;


The pthread_mutexattr_setprioceiling subroutine sets the value of
the prioceiling attribute of the mutex attributes object attr. This
attribute specifies the priority ceiling of the mutex created with
this attributes object, used in the priority protection protocol to
prevent priority inversions. It has no meaning if the mutex uses another

Note:	The pthread.h header file must be the first included file of
each source file using the threads library.


attr	Specifies the mutex attributes object.

prioceiling	Specifies the priority ceiling to set. It must be in the
range from 1 to 127, where 1 is the least favored priority, and 127
the most favored; it should be the priority of the highest priority
thread that can lock the mutex lock, or higher. Setting a lower value
may cause priority inversions.

Return Values

Upon successful completion, 0 is returned. Otherwise, an error code
is returned.

Error Codes

The pthread_mutexattr_setprioceiling subroutine is unsuccessful if
the following is true:

EINVAL	The attr or prioceiling parameters are not valid.

ENOSYS	The priority protection POSIX option is not implemented.

EPERM	The calling thread does not have sufficient privilege to perform
the operation.

Implementation Specifics

This subroutine is part of the Base Operating System (BOS) Runtime.

The implementation of this subroutine is dependent on the priority
protection POSIX option. The priority protection POSIX option is not
implemented in the current version of AIX.

Related Information

The pthread_mutexattr_getprioceiling subroutine, pthread_mutexattr_init
subroutine, pthread_mutex_init subroutine, pthread_mutex_setprioceiling

Synchronization Scheduling.

Threads Library Options and Threads Library Quick Reference.