|
YACLib
C++ library for concurrent tasks execution
|
#include <yaclib/async/detail/wait_impl.hpp>#include <yaclib/async/future.hpp>#include <yaclib/config.hpp>#include <yaclib/util/detail/mutex_event.hpp>#include <chrono>#include <cstddef>Go to the source code of this file.
Namespaces | |
| namespace | yaclib |
Functions | |
| template<typename Event = detail::MutexEvent, typename Rep , typename Period , typename... Waited> | |
| YACLIB_INLINE std::enable_if_t<(... &&is_waitable_with_timeout_v< Waited >), bool > | yaclib::WaitFor (const std::chrono::duration< Rep, Period > &timeout_duration, Waited &... fs) noexcept |
| Wait until the specified timeout duration has elapsed or Ready becomes true. | |
| template<typename Event = detail::MutexEvent, typename Rep , typename Period , typename It , typename Sentinel , typename = std::enable_if_t<is_input_range_pair_v<It, Sentinel> && is_waitable_with_timeout_v<typename std::iterator_traits<It>::reference>>> | |
| YACLIB_INLINE bool | yaclib::WaitFor (const std::chrono::duration< Rep, Period > &timeout_duration, It begin, Sentinel end) noexcept |
| Wait until the specified timeout duration has elapsed or Ready becomes true. | |
| template<typename Event = detail::MutexEvent, typename Rep , typename Period , typename Range , typename = std::enable_if_t< is_input_range_v<Range> && is_waitable_with_timeout_v<typename std::iterator_traits<detail::RangeIterator<Range>>::reference>>> | |
| YACLIB_INLINE bool | yaclib::WaitFor (const std::chrono::duration< Rep, Period > &timeout_duration, Range &&range) noexcept |
| Wait until the specified timeout duration has elapsed or Ready becomes true. | |
| template<typename Event = detail::MutexEvent, typename Rep , typename Period , typename It , typename = std::enable_if_t<is_input_iterator_v<It> && is_waitable_with_timeout_v<typename std::iterator_traits<It>::reference>>> | |
| YACLIB_INLINE bool | yaclib::WaitFor (const std::chrono::duration< Rep, Period > &timeout_duration, It begin, std::size_t count) noexcept |
| Wait until the specified timeout duration has elapsed or Ready becomes true. | |