Files
2025-10-25 03:02:53 +03:00

3.1 KiB

[stopsource.inplace]

32 Concurrency support library [thread]

32.3 Stop tokens [thread.stoptoken]

32.3.9 Class inplace_stop_source [stopsource.inplace]

32.3.9.1 General [stopsource.inplace.general]

1

#

The class inplace_stop_source models stoppable-source.

namespace std {class inplace_stop_source {public:// [stopsource.inplace.cons], constructorsconstexpr inplace_stop_source() noexcept;

inplace_stop_source(inplace_stop_source&&) = delete; inplace_stop_source(const inplace_stop_source&) = delete; inplace_stop_source& operator=(inplace_stop_source&&) = delete; inplace_stop_source& operator=(const inplace_stop_source&) = delete; ~inplace_stop_source(); // [stopsource.inplace.mem], stop handlingconstexpr inplace_stop_token get_token() const noexcept; static constexpr bool stop_possible() noexcept { return true; }bool stop_requested() const noexcept; bool request_stop() noexcept; };}

32.3.9.2 Constructors [stopsource.inplace.cons]

🔗

constexpr inplace_stop_source() noexcept;

1

#

Effects: Initializes a new stop state inside *this.

2

#

Postconditions: stop_requested() is false.

32.3.9.3 Member functions [stopsource.inplace.mem]

🔗

constexpr inplace_stop_token get_token() const noexcept;

1

#

Returns: A new associated inplace_stop_token object whose stop-source member is equal to this.

🔗

bool stop_requested() const noexcept;

2

#

Returns: true if the stop state inside *this has received a stop request; otherwise, false.

🔗

bool request_stop() noexcept;

3

#

Effects: Executes a stop request operation ([stoptoken.concepts]).

4

#

Postconditions: stop_requested() is true.