Namespaces
Variants

std::counting_semaphore<LeastMaxValue>:: release

From cppreference.net
Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
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)