std::coroutine_handle<Promise>::destroy
From cppreference.com
< cpp | coroutine | coroutine handle
Member of other specializations |
||
void destroy() const; |
(1) | (since C++20) |
Member of specialization std::coroutine_handle<std::noop_coroutine_promise> |
||
constexpr void destroy() const noexcept; |
(2) | (since C++20) |
1) Destroys the coroutine state of the coroutine to which *this refers, or does nothing if the coroutine is a no-op coroutine.
2) Does nothing.
The behavior is undefined if destroying is needed and *this does not refer a suspended coroutine.
Parameters
(none)
Return value
(none)
Notes
N4861 (C++20 final working draft) requires that a call to destroy
on a std::coroutine_handle<> converted from a std::noop_coroutine_handle is also no-op, which is unimplementable because a std::noop_coroutine_handle may refer to a coroutine that is not no-op, or may not refer to a coroutine. This is LWG issue 3460.
Example
This section is incomplete Reason: no example |
See also
(C++20) |
resumes execution of the coroutine (public member function) |