Spec-Zone.ru › C++

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 для уведомления

Возвращаемое значение

(нет)

Примечания

Этот вид обнаружения изменений часто более эффективен, чем простое опробование или чистые спин-блоки.

Пример

См. также

notify_one
(C++20)
уведомляет хотя бы один заблокированный поток на атомарном объекте
(публичный член-функция std::atomic_flag)
notify_all
(C++20)
уведомляет все заблокированные потоки, ожидающие атомарного объекта
(публичный член-функция std::atomic_flag)
atomic_flag_waitatomic_flag_wait_explicit
(C++20)(C++20)
блокирует поток, пока не будет уведомлен и флаг не изменится
(функция)
atomic_flag_notify_one
(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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API