PTHREAD_MUTEX_CONSISTENT - Linux手册页

时间:2019-08-20 18:01:04  来源:igfitidea点击:

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)。

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/