Warning: main(/www/www/htdocs/style/globals.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 1
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/globals.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 1
Warning: main(/www/www/htdocs/style/header.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 8
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/header.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 8
Get a mutex's scheduling protocol
#include <pthread.h>
int pthread_mutexattr_getprotocol(
pthread_mutexattr * attr,
int * protocol );
- attr
- A pointer to the pthread_mutexattr_t object that you
want to get the attribute from.
- protocol
- A pointer to a location where the function can store the
scheduling protocol.
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
The pthread_mutexattr_getprotocol() function sets protocol to
the current mutex attribute attr's scheduling protocol.
The structure pointed to by attr must have been previously created with
pthread_mutexattr_init().
The protocol attribute defines the protocol for using mutexes:
Currently, protocol may be set to:
- PTHREAD_PRIO_INHERIT
- When a thread is blocking higher-priority threads by locking one
or more mutexes with this attribute, the thread's priority is
raised to that of the highest priority thread waiting on the
PTHREAD_PRIO_INHERIT mutex.
- PTHREAD_PRIO_PROTECT
- The thread executes at the highest priority or priority ceilings of all
the mutexes owned by the thread and initialized with
PTHREAD_PRIO_PROTECT, whether other threads are blocked
or not.
A thread holding a PTHREAD_PRIO_INHERIT mutex won't be
moved to the tail of the scheduling queue if its original priority is changed
(by a call to pthread_schedsetparam(), for example).
This remains true if the thread unlocks the PTHREAD_PRIO_INHERIT mutex.
|
The POSIX protocol of PTHREAD_PRIO_NONE isn't currently supported. |
- EOK
- Success.
- EINVAL
- Invalid mutex attribute attr.
POSIX 1003.1 THR TPP|TPI
Safety: | |
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
Yes |
Thread |
Yes |
pthread_mutexattr_setprotocol(),
pthread_mutexattr_setrecursive()
“Mutexes: mutual exclusion locks”
in the QNX Neutrino Microkernel chapter of the
System Architecture guide
Warning: main(/www/www/htdocs/style/footer.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 172
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/footer.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_mutexattr_getprotocol.html on line 172