多线程编程指南

设置读写锁属性

pthread_rwlockattr_setpshared(3C) 可用来设置由进程共享的读写锁属性。

pthread_rwlockattr_setpshared 语法

#include <pthread.h>



int pthread_rwlockattr_setpshared(pthread_rwlockattr_t  *attr, 

											int  pshared);

读写锁属性可以为以下值之一:


PTHREAD_PROCESS_SHARED

描述:

允许可访问用于分配读写锁的内存的任何线程对读写锁进行处理。即使该锁是在由多个进程共享的内存中分配的,也允许对其进行处理。


PTHREAD_PROCESS_PRIVATE

描述:

读写锁只能由某些线程处理,这些线程与初始化该锁的线程在同一进程中创建。如果不同进程的线程尝试对此类读写锁进行处理,则其行为是不确定的。由进程共享的属性的缺省值为 PTHREAD_PROCESS_PRIVATE

pthread_rwlockattr_setpshared 返回值

如果成功,pthread_rwlockattr_setpshared() 会返回零。否则,将返回用于指明错误的错误号。


EINVAL

描述:

attrpshared 指定的值无效。