atomic_atomic_notify_one
atomic_atomic_notify_one (원자적 단일 알림)
std::atomic_notify_one는 원자적 객체에서 대기 중인 스레드 하나를 깨워요.
출처: cppreference
본문
std::atomic_notify_one은 <atomic> 헤더에 정의된 자유 함수예요. C++20부터 사용 가능해요.
template< class T >
void atomic_notify_one( std::atomic<T>* obj ) noexcept;
obj->notify_one()처럼 동작해요. obj에서 atomic_wait로 대기 중인 스레드 중 하나를 깨워요.
예제 (Example)
#include <atomic>
#include <thread>
std::atomic<int> a{0};
int main()
{
std::thread([&]{ std::atomic_wait(&a, 0); /* 깨어남 */ }).detach();
std::atomic_store(&a, 1);
std::atomic_notify_one(&a);
}