mtx_trylock
来自cppreference.com
定义于头文件 <threads.h>
|
||
int mtx_trylock( mtx_t *mutex ); |
(C11 起) | |
尝试锁定 mutex
所指向的互斥而不阻塞。若该互斥已被锁定则立即返回。
同一互斥上对 mtx_unlock 的先前调用同步于此操作(若此操作成功),而且任何给定互斥上的所有锁定/解锁操作构成单独全序(类似于原子对象上的修改顺序)。
参数
mutex | - | 指向要锁定的互斥的指针 |
返回值
若成功则为 thrd_success ,若已锁定该互斥或由于获取可用互斥的虚假失败则为 thrd_busy ,若出现错误则为 thrd_error 。
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C 标准。
DR | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
DR 470 | C11 | 不允许 mtx_trylock 虚假地失败
|
允许 |
引用
- C17 标准(ISO/IEC 9899:2018):
- 7.26.4.5 The mtx_trylock function (p: 278-279)
- C11 标准(ISO/IEC 9899:2011):
- 7.26.4.5 The mtx_trylock function (p: 382)
参阅
(C11) |
阻塞到锁定互斥为止 (函数) |
(C11) |
阻塞到锁定互斥或时限经过为止 (函数) |
(C11) |
解锁互斥 (函数) |