...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Specify
use_coro_t
as the default completion token type.
typedef use_coro_t default_completion_token_type;
Name |
Description |
---|---|
Adapts an executor to add the use_coro_t completion token as the default. |
Name |
Description |
---|---|
as_default_on [static] |
Function helper to adapt an I/O object to use use_coro_t as its default completion token type. |
use_coro_t [constructor] |
Default constructor. |
The use_coro_t
class, with its value use_coro
,
is used to represent an operation that can be awaited by the current resumable
coroutine. This completion token may be passed as a handler to an asynchronous
operation. For example:
coro<void> my_coroutine(tcp::socket my_socket) { std::size_t n = co_await my_socket.async_read_some(buffer, use_coro); ... }
When used with co_await, the initiating function (async_read_some
in the above example) suspends the current coroutine. The coroutine is
resumed when the asynchronous operation completes, and the result of the
operation is returned.
Header: boost/asio/experimental/use_coro.hpp
Convenience header: None