std:: atomic_notify_all
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Определено в заголовочном файле
<atomic>
|
||
|
template
<
class
T
>
void atomic_notify_all ( std:: atomic < T > * object ) ; |
(1) | (начиная с C++20) |
|
template
<
class
T
>
void atomic_notify_all ( volatile std:: atomic < T > * object ) ; |
(2) | (начиная с C++20) |
Выполняет атомарные операции уведомления.
Разблокирует все потоки, заблокированные в операциях атомарного ожидания (т.е. std::atomic_wait() , std::atomic_wait_explicit() или std::atomic::wait() ) на * object , если таковые имеются; в противном случае ничего не делает.
Эквивалентно object - > notify_all ( ) .
Содержание |
Параметры
| object | - | указатель на атомарный объект для уведомления |
Возвращаемое значение
(нет)
Примечания
Эта форма обнаружения изменений часто более эффективна, чем простое опрашивание или чистые спинлоки.
Пример
|
Этот раздел не завершён
Причина: отсутствует пример |
Смотрите также
|
(C++20)
|
уведомляет по крайней мере один поток, ожидающий атомарный объект
(публичная функция-член
std::atomic<T>
)
|
|
(C++20)
|
уведомляет все потоки, заблокированные в ожидании атомарного объекта
(публичная функция-член
std::atomic<T>
)
|
|
(C++20)
(C++20)
|
блокирует поток до получения уведомления и изменения атомарного значения
(шаблон функции) |
|
(C++20)
|
уведомляет поток, заблокированный в atomic_wait
(шаблон функции) |