std::stop_token::stop_possible
[[nodiscard]] bool stop_possible() const noexcept; |
(since C++20) |
Checks if the stop_token
object has associated stop-state, and that state either has already had a stop requested or it has associated std::stop_source
object(s).
A default constructed stop_token
has no associated stop-state, and thus cannot be stopped; the associated stop-state for which no std::stop_source
object(s) exist can also not be stopped if such a request has not already been made.
Parameters
(none).
Return value
false
if the stop_token
object has no associated stop-state, or it did not yet receive a stop request and there are no associated std::stop_source
object(s); true
otherwise.
Notes
If the stop_token
object has associated stop-state and a stop request has already been made, this function still returns true
.
If the stop_token
object has associated stop-state from a std::jthread
—for example, the stop_token
was retrieved by invoking get_stop_token()
on a std::jthread
object—then this function always returns true
. A std::jthread
always has an internal std::stop_source
object, even if the thread's invoking function does not check it.
Example
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/thread/stop_token/stop_possible