我需要让一个线程等到两个
>超时已过期,或
>变量由另一个线程更改
经过一些研究后我发现pthreads得到了pthread_cond_timedwait,如果我使用pthreads,这在这种情况下会很有用.
我正在使用C 11线程.没有完全传递给pthreads,有没有合适的替代方案?
解决方法
是的,你想要来自< condition_variable>的
std::condition_variable
,它有一个需要一段时间的成员函数wait_for.
The condition_variable class is a synchronization primitive that can
be used to block a thread,or multiple threads at the same time,
until:
- a notification is received from another thread
- a timeout expires