c++ - boost::condition::timed_wait 的使用示例

标签 c++ multithreading boost boost-thread condition-variable

有人有如何最轻松地使用 boost::condition::timed_wait 的示例吗?该主题有一些线程here , herehere ,但没有一个具有工作示例。而且 boost doc 像往常一样非常稀疏。

最佳答案

实际上,我终于找到了一个完整示例的链接here .稍微适应一下,这似乎是电话。

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() { ... }

关于c++ - boost::condition::timed_wait 的使用示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7078511/

相关文章:

c++ - 使用线程池进行模拟: boost-thread and boost-asio

c++ - 为什么这个 << 重载不编译

c++ - 在非 GUI 线程中生成 QPixmap

c++ - 这里需要内存栅栏吗?

c++ - 来自 Boost 的 JSON 解析器的警告 C4512 的解决方法

C++ 共享库创建 - 链接到其他共享库

c++ - 使用引用运算符 (&) 将随机值分配给矩阵

c++ - 通过引用或指针返回并检查是否为空?

c++ - 如何将 Visual Studio 设置为仅使用 lib 文件?

java - 如何在应用程序运行时将多个 textView 更改为特定的日期和时间