昨日の記事「boost::asio::deadline_timerは複数のタイマーを持てる」は誤りでした。 タイマーはひとつのインスタンスでひとつしか設定できず、複数設定できるのはasync_waitによる複数ハンドラの待機でした。 以下では、on_timerを2回async_waitしてるので、2秒後に2回on_timerが呼ばれます。 #include <iostream> #include <string> #include <ctime> #include <boost/asio.hpp> #include <boost/format.hpp> namespace asio = boost::asio; std::string now() { std::time_t t; std::time(&t); std::tm* st = std::localtime(&t); return