多线程编程指南

尝试获取写锁

使用 rw_trywrlock(3C) 可以尝试获取 rwlp 所指向的读写锁中的写锁。

rw_trywrlock 语法

#include <synch.h>  (或  #include <thread.h>



int rw_trywrlock(rwlock_t *rwlp);

如果读写锁上的读锁或写锁已经锁定,则 rw_trywrlock() 将返回错误。对于 POSIX 线程,请参见pthread_rwlock_trywrlock 语法

rw_trywrlock 返回值

rw_trywrlock() 在成功完成之后返回零。其他任何返回值都表示出现了错误。如果出现以下任一情况,该函数将失败并返回对应的值。


EINVAL

描述:

参数无效。


EFAULT

描述:

rwlp 指向的地址非法。


EBUSY

描述:

rwlp 所指向的读写锁已经锁定。