2
0
mirror of https://github.com/boostorg/asio.git synced 2026-01-21 16:52:09 +00:00

Update examples to use chrono rather than Boost.Date_Time.

N.B. The Windows-specific tick_count_timer example has been removed as
it has been superseded by timers based on the standard steady_clock.
It's also not clear how to map a wrapping time source to the standard
chrono concepts.
This commit is contained in:
Christopher Kohlhoff
2018-04-01 09:58:45 +10:00
parent 5672713c90
commit 69d54db71f
15 changed files with 111 additions and 244 deletions

View File

@@ -12,15 +12,14 @@
#include <boost/asio.hpp>
#include <boost/thread/thread.hpp>
#include <boost/bind.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
class printer
{
public:
printer(boost::asio::io_context& io)
: strand_(io),
timer1_(io, boost::posix_time::seconds(1)),
timer2_(io, boost::posix_time::seconds(1)),
timer1_(io, boost::asio::chrono::seconds(1)),
timer2_(io, boost::asio::chrono::seconds(1)),
count_(0)
{
timer1_.async_wait(boost::asio::bind_executor(strand_,
@@ -42,7 +41,7 @@ public:
std::cout << "Timer 1: " << count_ << std::endl;
++count_;
timer1_.expires_at(timer1_.expires_at() + boost::posix_time::seconds(1));
timer1_.expires_at(timer1_.expiry() + boost::asio::chrono::seconds(1));
timer1_.async_wait(boost::asio::bind_executor(strand_,
boost::bind(&printer::print1, this)));
@@ -56,7 +55,7 @@ public:
std::cout << "Timer 2: " << count_ << std::endl;
++count_;
timer2_.expires_at(timer2_.expires_at() + boost::posix_time::seconds(1));
timer2_.expires_at(timer2_.expiry() + boost::asio::chrono::seconds(1));
timer2_.async_wait(boost::asio::bind_executor(strand_,
boost::bind(&printer::print2, this)));
@@ -65,8 +64,8 @@ public:
private:
boost::asio::io_context::strand strand_;
boost::asio::deadline_timer timer1_;
boost::asio::deadline_timer timer2_;
boost::asio::steady_timer timer1_;
boost::asio::steady_timer timer2_;
int count_;
};