cnd_timedwait
来自 cppreference.com
定义在头文件 <threads.h> 中 |
||
(自 C11) | ||
原子地解锁由 mutex
指向的互斥锁,并在由 cond
指向的条件变量上阻塞,直到线程被 cnd_signal 或 cnd_broadcast 信号,或直到由 time_point
指向的基于 TIME_UTC 的时间点已达到,或直到发生虚假唤醒。在函数返回之前,互斥锁将被再次锁定。
如果互斥锁尚未被调用线程锁定,则行为未定义。
内容 |
[编辑] 参数
cond | - | 指向要阻塞的条件变量的指针 |
mutex | - | 指向在阻塞期间要解锁的互斥锁的指针 |
time_point | - | 指向指定要等待的超时时间的对象的指针 |
[编辑] 返回值
如果成功,则为 thrd_success;如果在互斥锁被锁定之前已达到超时时间,则为 thrd_timedout;如果发生错误,则为 thrd_error。
[编辑] 参考资料
- C17 标准 (ISO/IEC 9899:2018)
- 7.26.3.5 cnd_timedwait 函数 (p: 276-277)
- C11 标准 (ISO/IEC 9899:2011)
- 7.26.3.5 cnd_timedwait 函数 (p: 379-380)
[编辑] 另请参阅
(C11) |
在条件变量上阻塞 (函数) |
C++ 文档 为 condition_variable::wait_until
| |
C++ 文档 为 condition_variable_any::wait_until
|