std::atomic_flag_notify_all
Defined in header <atomic> |
||
|---|---|---|
void atomic_flag_notify_all( std::atomic_flag* object ) noexcept; |
(1) | (since C++20) |
void atomic_flag_notify_all( volatile std::atomic_flag* object ) noexcept; |
(2) | (since C++20) |
Выполняет атомарные операции уведомления.
Разблокирует все потоки, заблокированные в атомарных операциях ожидания (т.е. std::atomic_flag_wait(), std::atomic_flag_wait_explicit(), или std::atomic_flag::wait()) на *object, если таковые имеются; в противном случае ничего не делает.
Эквивалентно object->notify_all().
Параметры
| object | - | указатель на объект atomic_flag для уведомления |
Возвращаемое значение
(нет)
Примечания
Этот вид обнаружения изменений часто более эффективен, чем простое опробование или чистые спин-блоки.
Пример
См. также
|
(C++20) |
уведомляет хотя бы один заблокированный поток на атомарном объекте (публичный член-функция std::atomic_flag) |
|
(C++20) |
уведомляет все заблокированные потоки, ожидающие атомарного объекта (публичный член-функция std::atomic_flag) |
|
(C++20)(C++20) |
блокирует поток, пока не будет уведомлен и флаг не изменится (функция) |
|
(C++20) |
уведомляет заблокированный поток в atomic_flag_wait (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/atomic/atomic_flag_notify_all