[[nodiscard]] arrival_token arrive( std::ptrdiff_t n = 1 ); | (since C++20) |
Constructs an arrival_token
object associated with the phase synchronization point for the current phase. Then, decrements the expected count by n
.
This function executes atomically. The call to this function strongly happens-before the start of the phase completion step for the current phase.
The behavior is undefined if n
is less than or equal to 0 or greater than the expected count for the current barrier phase.
n | - | the value by which the expected count is decreased |
The constructed arrival_token
object.
Throws std::system_error
with an error code allowed for mutex types on error.
This function can cause the completion step for the current phase to start.
blocks at the phase synchronization point until its phase completion step is run (public member function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/thread/barrier/arrive