pthread_cond_timedwait 函数
1 | int pthread_cond_timedwait(pthread_cond_t *restrict cond, |
pthread_cond_timedwait
用于等待一个条件变量,等待条件变量的同时可以设置等待超时。其中 abstime
超时时间是一个绝对值,也就是距离 1970-1-1
的时间值,而不是一个时间段。比如说当前时间为:2023-05-28 17:06:00.100
,我想要通过这个函数设置最大超时为 3000ms,那么就需要设置 abstime 的时间为:2023-05-28 17:06:03.100
同时,建议大家使用单调时间,而非系统时间。因为系统时间可能存在跳变的问题。
如下举个例子:
1 |
|