std::counting_semaphore<LeastMaxValue>::release
void release( std::ptrdiff_t update = 1 ); | (начиная с C++20) |
Атомарно увеличивает внутренний счётчик на значение update. Все потоки, ожидающие, пока значение счётчика станет больше 0, например заблокированные в acquire, будут разблокированы.
Эта операция строго предшествует вызовам try_acquire, наблюдающим результат её эффектов.
Предварительные условия
И update >= 0, и update <= max() - counter должны быть true, где counter — значение внутреннего счётчика.
Параметры
| update | - | величина, на которую увеличивается внутренний счётчик |
Исключения
Может выбросить std::system_error.
См. также
| уменьшает внутренний счётчик или блокируется до тех пор, пока это не станет возможно (открытая функция-член) |
|
| пытается уменьшить внутренний счётчик без блокировки (открытая функция-член) |
|
| пытается уменьшить внутренний счётчик, блокируясь на время до указанной длительности (открытая функция-член) |
|
| пытается уменьшить внутренний счётчик, блокируясь до указанного момента времени (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/thread/counting_semaphore/release