std::recursive_timed_mutex::try_lock
来自 cppreference.cn
< cpp | thread | recursive timed mutex
bool try_lock() noexcept; |
(自 C++11 起) | |
尝试锁定互斥量。立即返回。成功获取锁时返回 true,否则返回 false。
即使互斥量当前未被任何其他线程锁定,此函数也可能虚假地失败并返回 false。
线程可以重复调用递归互斥量上的 try_lock
。成功调用 try_lock
会增加所有权计数:只有在线程对 unlock 进行匹配次数的调用后,互斥量才会被释放。
所有权的最大层数未指定。如果超过此数量,则对 try_lock
的调用将返回 false。
在同一互斥量上先前的 unlock() 操作同步于(如 std::memory_order 中定义)此操作(如果它返回 true)。请注意,如果先前的 lock() 返回 false,则它不与此操作同步。
目录 |
[[编辑]] 参数
(无)
[[编辑]] 返回值
如果成功获取锁,则为 true,否则为 false。
[[编辑]] 异常
不抛出异常。
[[编辑]] 示例
本节尚不完整 原因:没有示例 |
[[编辑]] 参见
锁定互斥量,如果互斥量不可用则阻塞 (公共成员函数) | |
尝试锁定互斥量,如果互斥量在指定的超时持续时间内 不可用则返回 (公共成员函数) | |
尝试锁定互斥量,如果互斥量在指定的超时持续时间内 不可用直到达到指定的时间点 (公共成员函数) | |
解锁互斥量 (公共成员函数) | |
C 文档 关于 mtx_trylock
|