PTHREAD_MUTEXATTR_GETPSHARED - Linux手册页

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

Linux程序员手册 第3部分
更新日期: 2017-09-13

名称

pthread_mutexattr_getpshared,pthread_mutexattr_setpshared-获取/设置进程共享的互斥锁属性

语法

#include <pthread.h>

int pthread_mutexattr_getpshared(const pthread_mutexattr_t *attr,
                                 int *pshared);
int pthread_mutexattr_setpshared(pthread_mutexattr_t *attr,
                                 int pshared);

编译并链接-pthread。

说明

这些函数获取并设置互斥对象属性对象中的进程共享属性。必须正确设置此属性,以确保使用此属性对象创建的互斥体正确,有效地操作。

进程共享属性可以具有以下值之一:

PTHREAD_PROCESS_PRIVATE
使用此属性对象创建的互斥锁仅在初始化互斥锁的同一过程中在线程之间共享。这是进程共享的互斥锁属性的默认值。
PTHREAD_PROCESS_SHARED
使用此属性对象创建的互斥对象可以在任何有权访问包含该对象的内存的线程之间共享,包括不同进程中的线程。

pthread_mutexattr_getpshared()将attr引用的互斥属性对象的进程共享属性的值放在pshared指向的位置。

pthread_mutexattr_setpshared()将attr引用的互斥属性对象的进程共享属性的值设置为pshared中指定的值。

如果attr未引用初始化的互斥体属性对象,则该行为未定义。

返回值

成功时,这些函数返回0。错误时,它们返回正错误号。

错误说明

pthread_mutexattr_setpshared()可能因以下错误而失败:

EINVAL
在pshared中指定的值无效。
ENOTSUP
pshared是PTHREAD_PROCESS_SHARED,但是该实现不支持进程共享的互斥锁。

遵循规范

POSIX.1-2001,POSIX.1-2008。

另外参见

pthread_mutexattr_init(3),pthreads(7)

出版信息

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