11 #ifndef ASIO_DETAIL_CONDITIONALLY_ENABLED_EVENT_HPP 12 #define ASIO_DETAIL_CONDITIONALLY_ENABLED_EVENT_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 18 #include "asio/detail/config.hpp" 19 #include "asio/detail/conditionally_enabled_mutex.hpp" 20 #include "asio/detail/event.hpp" 21 #include "asio/detail/noncopyable.hpp" 22 #include "asio/detail/null_event.hpp" 23 #include "asio/detail/scoped_lock.hpp" 25 #include "asio/detail/push_options.hpp" 48 if (lock.mutex_.enabled_)
55 if (lock.mutex_.enabled_)
56 event_.signal_all(lock);
60 void unlock_and_signal_one(
63 if (lock.mutex_.enabled_)
64 event_.unlock_and_signal_one(lock);
68 void unlock_and_signal_one_for_destruction(
71 if (lock.mutex_.enabled_)
72 event_.unlock_and_signal_one(lock);
76 bool maybe_unlock_and_signal_one(
79 if (lock.mutex_.enabled_)
80 return event_.maybe_unlock_and_signal_one(lock);
88 if (lock.mutex_.enabled_)
95 if (lock.mutex_.enabled_)
105 if (lock.mutex_.enabled_)
106 return event_.wait_for_usec(lock, usec);
108 return null_event().wait_for_usec(lock, usec);
118 #include "asio/detail/pop_options.hpp" 120 #endif // ASIO_DETAIL_CONDITIONALLY_ENABLED_EVENT_HPP Definition: conditionally_enabled_event.hpp:31
Definition: noncopyable.hpp:25
Definition: null_event.hpp:26
Definition: conditionally_enabled_mutex.hpp:34
Definition: any_io_executor.hpp:28