std::latch:: arrive_and_wait
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
|
latch::arrive_and_wait
|
||||
| Constants | ||||
|
void
arrive_and_wait
(
std::
ptrdiff_t
n
=
1
)
;
|
(начиная с C++20) | |
Атомарно уменьшает внутренний счётчик на n и (при необходимости) блокирует вызывающий поток до тех пор, пока счётчик не достигнет нуля. Эквивалентно count_down ( n ) ; wait ( ) ; .
Если n больше значения внутреннего счетчика или отрицательно, поведение не определено.
Параметры
| n | - | значение, на которое уменьшается внутренний счетчик |
Возвращаемое значение
(нет)
Исключения
Выбрасывает std::system_error с кодом ошибки, допустимым для типов мьютексов, при возникновении ошибки.