一、读写锁属性结构体(pthread_rwlockattr_t)
  • pthread_rwlockattr_t
二、读写锁属性
  • 进程共享:读写锁支持的唯一属性就是进程共享属性,它与互斥量的进程共享属性是相同的(互斥量见文章:javascript:void(0)

虽然POSIX只定义了读写锁属性,但不同的平台的实现可以自由地定义额外的、非标准的属性

三、读写锁属性结构体的初始化
#include <pthread.h>
int pthread_rwlockattr_init(pthread_rwlockattr_t* attr);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t* attr);

//返回值:成功返回0;失败返回错误编码

pthread_rwlockattr_init函数:

  • 功能:对读写锁属性结构体初始化
  • 调用此函数之后,读写锁属性结构体的属性都是系统默认值,如果想要设置其他属性,还需要调用不同的函数进行设置

pthread_rwlockattr_destroy函数:

  • 功能:对读写锁属性结构体反初始化(销毁)
四、读写锁进程共享属性的设置与获取(pshared)
#include <pthread.h>
int pthread_rwlockattr_setshared(pthread_rwlockattr_t* attr,int pshared);
int pthread_rwlockattr_getshared(const pthread_rwlockattr_t* restrict attr,int* restrict pshared);

//返回值:成功返回0;失败返回错误编码

pthread_rwlockattr_setshared函数:

  • 功能:设置读写锁的进程共享属性

pthread_rwlockattr_getshared函数:

  • 功能:获取读写锁的进程共享属性