std::stop_token - cppreference.com (original) (raw)
| | | | | ------------------ | | ------------- | | class stop_token; | | (since C++20) |
The stop_token class provides the means to check if a stop request has been made or can be made, for its associated std::stop_source object. It is essentially a thread-safe "view" of the associated stop-state.
The stop_token can also be passed to the constructor of std::stop_callback, such that the callback will be invoked if the stop_token's associated std::stop_source is requested to stop. And stop_token can be passed to the interruptible waiting functions of std::condition_variable_any, to interrupt the condition variable's wait if stop is requested.
Contents
[edit] Member alias templates
[edit] Member functions
| (constructor) | constructs new stop_token object (public member function) [edit] |
|---|---|
| (destructor) | destructs the stop_token object (public member function) [edit] |
| operator= | assigns the stop_token object (public member function) [edit] |
| Modifiers | |
| swap | swaps two stop_token objects (public member function) [edit] |
| Observers | |
| stop_requested | checks whether the associated stop-state has been requested to stop (public member function) [edit] |
| stop_possible | checks whether associated stop-state can be requested to stop (public member function) [edit] |
[edit] Non-member functions
[edit] Notes
A stop_token object is not generally constructed independently, but rather retrieved from a std::jthread or std::stop_source. This makes it share the same associated stop-state as the std::jthread or std::stop_source.
| Feature-test macro | Value | Std | Feature |
|---|---|---|---|
| __cpp_lib_jthread | 201911L | (C++20) | Stop token and joining thread |
[edit] Example
Possible output:
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19