23 #include <boost/intrusive/list.hpp> 33 :
public std::enable_shared_from_this<TimeoutController> {
35 typedef std::chrono::steady_clock
Clock;
55 std::function<
void()> func_,
57 TimeoutHandleList& list_)
60 std::function<void()>
func;
LoopController & loopController_
std::chrono::steady_clock Clock
constexpr detail::Map< Move > move
—— Concurrent Priority Queue Implementation ——
std::vector< std::pair< Duration, TimeoutHandleListPtr > > timeoutHandleBuckets_
void runTimeouts(TimePoint time)
TimeoutHandle(std::function< void()> func_, TimePoint timeout_, TimeoutHandleList &list_)
intptr_t registerTimeout(std::function< void()> f, Duration duration)
TimeoutController(LoopController &loopController)
std::function< void()> func
std::unique_ptr< TimeoutHandleList > TimeoutHandleListPtr
std::queue< TimeoutHandle > TimeoutHandleList
std::chrono::nanoseconds time()
std::chrono::time_point< Clock > TimePoint