[Previous] [Contents] [Next]

pthread_mutexattr_setrecursive()

Set the recursive attribute in mutex attribute object

Synopsis:

#include <pthread.h>

int pthread_mutexattr_setrecursive(
        pthread_mutexattr_t* attr,
        int recursive );

Library:

libc

Description:

The pthread_mutexattr_setrecursive() function sets the recursive attribute in a mutex attribute object, attr.

If the recursive attribute is set to PTHREAD_RECURSIVE_ENABLE, a thread that has already locked the mutex can lock it again without blocking. If the recursive attribute is set to PTHREAD_RECURSIVE_DISABLE, any thread that tries to lock the mutex will block, if that mutex is already locked.

The default value of the recursive attribute is PTHREAD_RECURSIVE_DISABLE.

Returns:

EOK
Success.
EINVAL
Invalid mutex attribute object, attr, or the value specified by recursive isn't PTHREAD_RECURSIVE_ENABLE or PTHREAD_RECURSIVE_DISABLE.

Classification:

QNX 6

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

See also:

pthread_mutexattr_getrecursive(), pthread_mutexattr_init()


[Previous] [Contents] [Next]