PTHREAD_MUTEX_CONSISTENT - Linux手册页
Linux程序员手册 第3部分
更新日期: 2020-06-09
名称
pthread_mutex_consistent-使健壮的互斥体保持一致
语法
#include <pthread.h> int pthread_mutex_consistent(pthread_mutex_t *mutex);
编译并链接-pthread。
glibc的功能测试宏要求(请参阅feature_test_macros(7)):
pthread_mutex_consistent():
- _POSIX_C_SOURCE>= 200809L
说明
如果处于不一致状态,则此功能可使健壮的互斥体保持一致。如果互斥锁的所有者在持有该互斥锁时终止,则该互斥锁可能处于不一致状态,在这种情况下,下一个获取该互斥锁的所有者将成功,并通过对pthread_mutex_lock()的调用返回EOWNERDEAD的返回值。
返回值
成功时,pthread_mutex_consistent()返回0。否则,它将返回一个正的错误号以指示错误原因。
错误说明
- EINVAL
- 互斥锁不是健壮的,或者不是处于不一致的状态。
版本
pthread_mutex_consistent()已在2.12版中添加到glibc。
遵循规范
POSIX.1-2008。
备注
pthread_mutex_consistent()仅通知实现,互斥锁保护的状态(共享数据)已恢复到一致状态,并且现在可以使用互斥锁执行正常操作。在调用pthread_mutex_consistent()之前,应用程序有责任确保共享数据已还原到一致状态。
在将pthread_mutex_consistent()添加到POSIX之前,如果定义了_GNU_SOURCE,则glibc定义了以下等效的非标准函数:
int pthread_mutex_consistent(const pthread_mutex_t *mutex);
该特定于GNU的API最初出现在glibc 2.4中,如今已过时,不应在新程序中使用。
示例
请参见pthread_mutexattr_setrobust(3)。
另外参见
pthread_mutex_lock(3),pthread_mutexattr_init(3),pthread_mutexattr_getrobust(3),pthread_mutexattr_setrobust(3),pthreads(7)
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。