...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Returns an awaitable object that may be used to reset the cancellation state of the current coroutine.
template< typename Filter> constexpr unspecified reset_cancellation_state( Filter && filter);
Let P
be the cancellation slot associated with the current
coroutine's co\_spawn
completion handler. Assigns a new cancellation_state
object S
, constructed as S(P, std::forward<Filter>(filter))
,
into the current coroutine's cancellation state object.
boost::asio::awaitable<void> my_coroutine() { co_await boost::asio::this_coro::reset_cancellation_state( boost::asio::enable_partial_cancellation()); // ... }
The cancellation state is shared by all coroutines in the same "thread
of execution" that was created using co_spawn
.