11 #ifndef ASIO_DETAIL_SELECT_REACTOR_HPP 12 #define ASIO_DETAIL_SELECT_REACTOR_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 20 #if defined(ASIO_HAS_IOCP) \ 21 || (!defined(ASIO_HAS_DEV_POLL) \ 22 && !defined(ASIO_HAS_EPOLL) \ 23 && !defined(ASIO_HAS_KQUEUE) \ 24 && !defined(ASIO_WINDOWS_RUNTIME)) 40 #if defined(ASIO_HAS_IOCP) 42 #endif // defined(ASIO_HAS_IOCP) 53 #if defined(ASIO_WINDOWS) || defined(__CYGWIN__) 56 #else // defined(ASIO_WINDOWS) || defined(__CYGWIN__) 59 #endif // defined(ASIO_WINDOWS) || defined(__CYGWIN__) 95 io_service_.post_immediate_completion(op, is_continuation);
123 template <
typename Time_Traits>
127 template <
typename Time_Traits>
132 template <
typename Time_Traits>
134 const typename Time_Traits::time_type& time,
139 template <
typename Time_Traits>
142 std::size_t max_cancelled = (std::numeric_limits<std::size_t>::max)());
151 #if defined(ASIO_HAS_IOCP) 157 #endif // defined(ASIO_HAS_IOCP) 166 ASIO_DECL timeval* get_timeout(timeval& tv);
191 #if defined(ASIO_HAS_IOCP) 197 #endif // defined(ASIO_HAS_IOCP) 209 #if defined(ASIO_HEADER_ONLY) 211 #endif // defined(ASIO_HEADER_ONLY) 213 #endif // defined(ASIO_HAS_IOCP) 219 #endif // ASIO_DETAIL_SELECT_REACTOR_HPP ASIO_DECL void fork_service(asio::io_service::fork_event fork_ev)
ASIO_DECL int register_descriptor(socket_type, per_descriptor_data &)
ASIO_DECL void deregister_descriptor(socket_type descriptor, per_descriptor_data &, bool closing)
Provides core I/O functionality.
ASIO_DECL select_reactor(asio::io_service &io_service)
void remove_timer_queue(timer_queue< Time_Traits > &queue)
std::size_t cancel_timer(timer_queue< Time_Traits > &queue, typename timer_queue< Time_Traits >::per_timer_data &timer, std::size_t max_cancelled=(std::numeric_limits< std::size_t >::max)())
void post_immediate_completion(reactor_op *op, bool is_continuation)
ASIO_DECL void cancel_ops(socket_type descriptor, per_descriptor_data &)
class task_io_service io_service_impl
ASIO_DECL void run(bool block, op_queue< operation > &ops)
class select_reactor reactor
ASIO_DECL ~select_reactor()
fork_event
Fork-related event notifications.
bool is_continuation(Context &context)
ASIO_DECL void start_op(int op_type, socket_type descriptor, per_descriptor_data &, reactor_op *op, bool is_continuation, bool)
Class to represent an error code value.
ASIO_DECL void move_descriptor(socket_type descriptor, per_descriptor_data &target_descriptor_data, per_descriptor_data &source_descriptor_data)
ASIO_DECL void init_task()
void schedule_timer(timer_queue< Time_Traits > &queue, const typename Time_Traits::time_type &time, typename timer_queue< Time_Traits >::per_timer_data &timer, wait_op *op)
void add_timer_queue(timer_queue< Time_Traits > &queue)
ASIO_DECL void deregister_internal_descriptor(socket_type descriptor, per_descriptor_data &descriptor_data)
ASIO_DECL void interrupt()
ASIO_DECL int register_internal_descriptor(int op_type, socket_type descriptor, per_descriptor_data &descriptor_data, reactor_op *op)
ASIO_DECL void shutdown_service()
Destroy all user-defined handler objects owned by the service.