| 89 | } |
| 90 | |
| 91 | cobalt::generator<int> delay_gen(std::chrono::milliseconds tick) |
| 92 | { |
| 93 | asio::steady_timer tim{co_await cobalt::this_coro::executor, std::chrono::steady_clock::now()}; |
| 94 | for (int i = 0; i < 10; i ++) |
| 95 | { |
| 96 | co_await tim.async_wait(cobalt::use_op); |
| 97 | tim.expires_at(tim.expiry() + tick); |
| 98 | co_yield i; |
| 99 | } |
| 100 | co_return 10; |
| 101 | } |
| 102 | |
| 103 | cobalt::generator<int> lazy_delay_gen(std::chrono::milliseconds tick) |
| 104 | { |