多线程编程指南

获取互斥锁属性的协议

pthread_mutexattr_getprotocol(3C) 可用来获取互斥锁属性对象的协议属性。

pthread_mutexattr_getprotocol 语法

#include <pthread.h>



int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *attr, 

											int *protocol);

attr 指示以前调用 pthread_mutexattr_init() 时创建的互斥锁属性对象。

protocol 包含以下协议属性之一:PTHREAD_PRIO_NONEPTHREAD_PRIO_INHERITPTHREAD_PRIO_PROTECT

pthread_mutexattr_getprotocol 返回值

如果成功完成,pthread_mutexattr_getprotocol() 会返回 0。其他任何返回值都表示出现了错误。

如果出现以下情况,pthread_mutexattr_getprotocol() 将失败并返回对应的值。


ENOSYS

描述:

_POSIX_THREAD_PRIO_INHERIT 选项和 _POSIX_THREAD_PRIO_PROTECT 选项均未定义并且该实现不支持此函数。

如果出现以下任一情况,pthread_mutexattr_getprotocol() 可能会失败并返回对应的值。


EINVAL

描述:

attr 指定的值无效。


EPERM

描述:

调用方无权执行该操作。