W3cubDocs

/C++

std::latch::arrive_and_wait

void arrive_and_wait( std::ptrdiff_t n = 1 );
(since C++20)

Atomically decrements the internal counter by n and (if necessary) blocks the calling thread until the counter reaches zero. Equivalent to count_down(n); wait();.

If n is greater than the value of the internal counter or is negative, the behavior is undefined.

Parameters

n - the value by which the internal counter is decreased

Return value

(none).

Exceptions

Throws std::system_error with an error code allowed for mutex types on error.

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/thread/latch/arrive_and_wait