diff options
Diffstat (limited to 'src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp')
-rw-r--r-- | src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp b/src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp index ba8b2a15420..be18564c30a 100644 --- a/src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp +++ b/src/third_party/asio-master/asio/include/asio/detail/epoll_reactor.hpp @@ -2,7 +2,7 @@ // detail/epoll_reactor.hpp // ~~~~~~~~~~~~~~~~~~~~~~~~ // -// Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com) +// Copyright (c) 2003-2017 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -67,6 +67,7 @@ public: ASIO_DECL descriptor_state(bool locking); void set_ready_events(uint32_t events) { task_result_ = events; } + void add_ready_events(uint32_t events) { task_result_ |= events; } ASIO_DECL operation* perform_io(uint32_t events); ASIO_DECL static void do_complete( void* owner, operation* base, @@ -127,14 +128,22 @@ public: per_descriptor_data& descriptor_data); // Cancel any operations that are running against the descriptor and remove - // its registration from the reactor. + // its registration from the reactor. The reactor resources associated with + // the descriptor must be released by calling cleanup_descriptor_data. ASIO_DECL void deregister_descriptor(socket_type descriptor, per_descriptor_data& descriptor_data, bool closing); - // Remote the descriptor's registration from the reactor. + // Remove the descriptor's registration from the reactor. The reactor + // resources associated with the descriptor must be released by calling + // cleanup_descriptor_data. ASIO_DECL void deregister_internal_descriptor( socket_type descriptor, per_descriptor_data& descriptor_data); + // Perform any post-deregistration cleanup tasks associated with the + // descriptor data. + ASIO_DECL void cleanup_descriptor_data( + per_descriptor_data& descriptor_data); + // Add a new timer queue to the reactor. template <typename Time_Traits> void add_timer_queue(timer_queue<Time_Traits>& timer_queue); |