Namespaces
Variants

std::atomic_ref<T>:: notify_all

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 notify_all ( ) const noexcept ;
(C++26부터 constexpr)

원자적 알림 작업을 수행합니다.

원자적 대기 연산(즉, wait() )에서 차단된 모든 스레드를 * ptr 에서 차단 해제합니다. 차단된 스레드가 없는 경우 아무 작업도 수행하지 않습니다. 이 오버로드는 std:: is_const_v < T > false 인 경우에만 오버로드 해결에 참여합니다.

목차

참고 사항

이러한 형태의 변경 감지는 단순 폴링이나 순수 스핀락보다 종종 더 효율적입니다.

예제

결함 보고서

다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.

DR 적용 대상 게시된 동작 올바른 동작
LWG 3508
( P3323R1 )
C++20 notify_all const T 에 대해 무의미했음 비-const T 만 허용하도록 제약됨

참고 항목

알림을 받고 원자적 값이 변경될 때까지 스레드를 차단합니다
(public member function)
알림을 받고 원자적 값이 변경될 때까지 스레드를 차단합니다
(function template)
atomic_wait에서 차단된 스레드에 알립니다
(function template)