std::atomic_ref<T>::notify_one
From cppreference.com
< cpp | atomic | atomic ref
void notify_one() const noexcept; |
(C++26 以降 constexpr) | |
アトミックな通知操作を実行します。
*ptr でブロックされているスレッド(つまり、wait())が存在する場合、そのようなスレッドのうち *少なくとも1つ* をアンブロックします。それ以外の場合は何もしません。このオーバーロードは、std::is_const_v<T> が false の場合にのみオーバーロード解決に参加します。
目次 |
[編集] 注記
この形式の変更検出は、単純なポーリングや純粋なスピンドックよりも効率的な場合が多いです。
[編集] 例
| このセクションは未完成です 理由: 例がありません |
欠陥レポート
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| LWG 3508 (P3323R1) |
C++20 | notify_one は const T に対しては無意味でした。 |
非 const T のみを受け入れるように制約されました。 |
[編集] 関連項目
| 通知されるまで、かつアトミックな値が変更されるまでスレッドをブロックする (public member function) | |
| (C++20)(C++20) |
通知されるまで、かつアトミックな値が変更されるまでスレッドをブロックする (関数テンプレート) |
| (C++20) |
atomic_waitでブロックされているスレッドに通知する (関数テンプレート) |