diff options
author | 2024-04-22 08:04:58 +1000 | |
---|---|---|
committer | 2024-04-22 08:04:58 +1000 | |
commit | 184292b730f4236bd4840e780fdad97ee060ec84 (patch) | |
tree | 67902161a465fe92aec78ca502de07092b8cde0f /3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp | |
parent | 24154bc1f00790f344120b3a85175d6f616c5ad0 (diff) |
3rdparty/asio: Updated to 1.30.2
Diffstat (limited to '3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp')
-rw-r--r-- | 3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp b/3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp deleted file mode 100644 index f17c9d67f94..00000000000 --- a/3rdparty/asio/src/examples/cpp03/tutorial/timer5/timer.cpp +++ /dev/null @@ -1,80 +0,0 @@ -// -// timer.cpp -// ~~~~~~~~~ -// -// Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com) -// -// Distributed under the Boost Software License, Version 1.0. (See accompanying -// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -// - -#include <iostream> -#include <asio.hpp> -#include <boost/bind/bind.hpp> - -class printer -{ -public: - printer(asio::io_context& io) - : strand_(asio::make_strand(io)), - timer1_(io, asio::chrono::seconds(1)), - timer2_(io, asio::chrono::seconds(1)), - count_(0) - { - timer1_.async_wait(asio::bind_executor(strand_, - boost::bind(&printer::print1, this))); - - timer2_.async_wait(asio::bind_executor(strand_, - boost::bind(&printer::print2, this))); - } - - ~printer() - { - std::cout << "Final count is " << count_ << std::endl; - } - - void print1() - { - if (count_ < 10) - { - std::cout << "Timer 1: " << count_ << std::endl; - ++count_; - - timer1_.expires_at(timer1_.expiry() + asio::chrono::seconds(1)); - - timer1_.async_wait(asio::bind_executor(strand_, - boost::bind(&printer::print1, this))); - } - } - - void print2() - { - if (count_ < 10) - { - std::cout << "Timer 2: " << count_ << std::endl; - ++count_; - - timer2_.expires_at(timer2_.expiry() + asio::chrono::seconds(1)); - - timer2_.async_wait(asio::bind_executor(strand_, - boost::bind(&printer::print2, this))); - } - } - -private: - asio::strand<asio::io_context::executor_type> strand_; - asio::steady_timer timer1_; - asio::steady_timer timer2_; - int count_; -}; - -int main() -{ - asio::io_context io; - printer p(io); - asio::thread t(boost::bind(&asio::io_context::run, &io)); - io.run(); - t.join(); - - return 0; -} |