Manages ITimeoutClient instances where each one has an individual timeout
value. Uses a timer event as timeout notification mechanism.
Objects that can time out, the so-called timeout clients, must implement
ITimeoutClient. For each client create an ExpiryRegistration instance and
pass the object to the ExpiryRegistration constructor.
Call ExpiryRegistration.register() to set a timeout for the corresponding
client. The timeout() method of each client is then called when it has
timed out.
To disable the timeout for a client that has not timed out yet, call
ExpiryRegistration.unregister() .
Initially the object returned by TimerEventTimeoutManager.select_client
must be registered to an epoll select dispatcher.
Boost Software License Version 1.0. See LICENSE_BOOST.txt for details.
Alternatively, this file may be distributed under the terms of the Tango
3-Clause BSD License (see LICENSE_BSD.txt for details).
Manages ITimeoutClient instances where each one has an individual timeout value. Uses a timer event as timeout notification mechanism.
Objects that can time out, the so-called timeout clients, must implement ITimeoutClient. For each client create an ExpiryRegistration instance and pass the object to the ExpiryRegistration constructor. Call ExpiryRegistration.register() to set a timeout for the corresponding client. The timeout() method of each client is then called when it has timed out. To disable the timeout for a client that has not timed out yet, call ExpiryRegistration.unregister() .
Initially the object returned by TimerEventTimeoutManager.select_client must be registered to an epoll select dispatcher.
Link with: -Llibebtree.a
Build flags: -debug=TimeoutManager = verbose output