std::counting_semaphore<LeastMaxValue>::release
来自 cppreference.com
< cpp | thread | counting semaphore
void release( std::ptrdiff_t update = 1 ); |
(自 C++20 起) | |
以原子方式将内部计数器增加 update 的值。任何因计数器小于 0(例如,由于被阻塞在 acquire 中)而等待计数器大于 0 的线程随后将被解除阻塞。
此操作在观察到效果结果的 try_acquire 的调用之前强烈发生。
内容 |
[编辑] 先决条件
两者 update >= 0 和 update <= max() - counter 都是 true,其中 counter
是内部计数器的值。
[编辑] 参数
更新 | - | 用于递增内部计数器的数量 |
[编辑] 异常
可能抛出 std::system_error。
[编辑] 另请参阅
递减内部计数器或阻塞直到可以 (公有成员函数) | |
尝试在不阻塞的情况下递减内部计数器 (公有成员函数) | |
尝试递减内部计数器,阻塞最多持续时间 (公有成员函数) | |
尝试递减内部计数器,阻塞到某个时间点 (公有成员函数) |