cpp / latest / thread / counting_semaphore / release.html /

std::counting_semaphore<LeastMaxValue>::release

void release( std::ptrdiff_t update = 1 );
(since C++20)

Atomically increments the internal counter by the value of update. Any thread(s) waiting for the counter to be greater than ​0​, such as due to being blocked in acquire, will subsequently be unblocked.

Preconditions

Both update >= 0 and update <= max() - counter are true, where counter is the value of the internal counter.

Parameters

update - the amount to increment the internal counter by

Exceptions

May throw std::system_error.

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