Да, в Boost 1.35 добавлена поддержка относительных таймаутов в Boost.Thread.Да, канонический способ указать относительное время - с помощью boost::posix_time::time_duration
(который является базовым классом posix_time::seconds
и posix_time::milliseconds
).
Если вам нужна документация относительно требуемой версии Boost, изменения в 1,35 (то есть изменения с 1,34), упоминается поддержка относительных таймаутов.Если это слишком расплывчато для ваших целей, сравните документацию 1,34 для condition
с документацией 1,35 для condition_variable_any
.(Существует typedef
, который позволяет вам сохранять имя типа "condition
" в 1.35.) Версия 1.34 документирует только версии timed_wait()
с абсолютным временем, в то время как версия 1.35 имеет шаблоны для версий, использующих относительное время.Предполагается, что параметр времени, который не является ни xtime
, ни system_time
, является относительным временем.
Имейте в виду, что * * * * * * * * * в Boost 1.50 устарело - заменой являются wait_for()
и wait_until()
, для относительного и абсолютного времени ожидания соответственно. Начиная с Boost 1.53, объявления timed_wait()
подавляются, если специально не запрашивается через #define
.То, что вы предлагаете, действительно для версий 1.35 - 1.52. Редактировать: Очевидно, что устаревшие функции не были удалены в задокументированном расписании.Тем не менее, они все еще не рекомендуются, поэтому, если вы установите минимальную версию 1.50, было бы целесообразно преобразовать ее в более новые функции.