16

有人有一个如何最容易使用 boost::condition::timed_wait 的例子吗?此处此处此处有一些关于该主题的主题,但没有一个具有工作示例。并且 boost doc 像往常一样非常稀疏。

4

1 回答 1

21

实际上,我终于在这里找到了完整示例的链接。稍加调整,这似乎就是号召。

boost::system_time const timeout=boost::get_system_time()+ boost::posix_time::milliseconds(35000);
boost::mutex::scoped_lock lock(the_mutex);
if(the_condition_variable.timed_wait(lock,timeout,&CondFulfilled))
{
    <cond fulfilled code>
}
else
{
    <timeout code>
}
bool CondFulfilled() { ... }
于 2011-08-16T14:31:17.943 回答