我想在条件最多等待1秒。 我已经尝试传递TIME_DURATION:
boost::posix_time::time_duration td = boost::posix_time::milliseconds(50);
readerThread_cond_.timed_wait(lock, boost::bind(&XXXX::writeCondIsMet, this), td);
但我得到的错误:
/usr/include/boost/thread/pthread/condition_variable.hpp:156:错误:在没有比赛的 '运营商+' '的boost :: get_system_time()+ wait_duration'
我也试过路过一个xtime的:
boost::xtime t;
boost::xtime_get(&t, boost::TIME_UTC);
readerThread_cond_.timed_wait(lock, boost::bind(&XXXX::writeCondIsMet, this), td);
但我得到的错误:
我与libboost_thread和libboost_date_time链接和代码编译,当我使用只是用等待运行正常,但似乎错误消息有关解决升压头文件的模板。 这似乎是说我没有传递正确的事,但我就是不明白。