pthread_mutexattr_setprioceiling()

Updated: April 19, 2023

Set the priority ceiling of a mutex attribute object

Synopsis:

#include <pthread.h>

int pthread_mutexattr_setprioceiling( 
                         pthread_mutexattr_t* attr,
                         int prioceiling );

Arguments:

attr
A pointer to the pthread_mutexattr_t object that you want to set the attribute in.
prioceiling
The new value for the priority ceiling.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_mutexattr_setprioceiling() function sets the mutex attribute attr's scheduling priority ceiling to prioceiling. Note that attr must have been previously created with pthread_mutexattr_init().

Note:
  • In order to change the priority ceiling to a value above the maximum permitted for unprivileged processes, your process must have the PROCMGR_AID_PRIORITY ability enabled. For more information, see procmgr_ability().
  • Robust mutexes, mutexes with priority ceilings, and those using SyncMutexEvent() use more system resources than other mutexes.

Returns:

EOK
Success.
EINVAL
Invalid value specified by attr or prioceiling.
EPERM
The calling process doesn't have the required permission; see procmgr_ability().

Classification:

POSIX 1003.1 RPP TPP

Safety:  
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes