std::counting_semaphore<LeastMaxValue>:: release
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Operations | ||||
|
counting_semaphore::release
|
||||
| Constants | ||||
|
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 .
Смотрите также
|
уменьшает внутренний счетчик или блокируется до тех пор, пока это возможно
(public member function) |
|
|
пытается уменьшить внутренний счетчик без блокировки
(public member function) |
|
|
пытается уменьшить внутренний счетчик, блокируясь на указанное время
(public member function) |
|
|
пытается уменьшить внутренний счетчик, блокируясь до указанного момента времени
(public member function) |