Boost Asio总结(10)定时器例子

定时器构造需要一个io_service对象

1. 同步和异步

1.1 同步

io_context i;
...
deadline_timer t(i);
t.expires_from_now(boost::posix_time::seconds(5));
t.wait();

1.2 异步

void handler(boost::system::error_code ec) {
    
     ... }
...
io_context i;
...
deadline_timer t(i);
t.expires_from_now(boost::posix_time::milliseconds(400));
t.async_wait(handler);
...
i.run();

2 绝对时间和相对时间

deadline_timer t2(i);
t2.expires_at(t.expires_at() + boost::posix_time::seconds(30));

猜你喜欢

转载自blog.csdn.net/thefist11cc/article/details/123565438