Пример использования boost::condition::timed_wait

У кого-нибудь есть пример того, как наиболее просто использовать boost::condition::timed_wait? Есть несколько тем на эту тему здесь, здесь и здесь, но ни одна из них не содержит рабочего примера. И повышение док как обычно довольно скудно.

1 ответ

Решение

На самом деле, я наконец нашел ссылку с полным примером здесь. С некоторой адаптацией это кажется вызовом.

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() { ... }
Другие вопросы по тегам