From cppreference.com
Defined in header
template<classT>voidatomic_notify_one(std::atomic<T>*object); (1) (since C++20)template<classT>voidatomic_notify_one(volatilestd::atomic<T>*object); (2) (since C++20)Performs atomic notifying operations.
If there is a thread blocked in atomic waiting operation (i.e.
,
, or
) on *object, then unblocks at least one such thread; otherwise does nothing.
Equivalent to object->notify_one().
Parameters
object - pointer to the atomic object to notify Return value
(none)
Notes
This form of change-detection is often more efficient than simple polling or pure spinlocks.
Example
See also
(C++20)
notifies at least one thread waiting on the atomic object
(public member function of std::atomic<T>)
(C++20)
notifies all threads blocked waiting on the atomic object
(public member function of std::atomic<T>)
(C++20)
notifies all threads blocked in atomic_wait
(function template)
(C++20)(C++20)
blocks the thread until notified and the atomic value changes
(function template)