次の方法で共有


packaged_task::operator 演算子 ()

関連する非同期状態に格納されている呼び出し可能オブジェクトを呼び出し、戻り値をアトミックに格納し、状態をレディに設定します。

void operator()(ArgTypes... args);

解説

packaged_task のオブジェクトに no_stateのエラー コードがある関連の非同期状態がない場合、このメソッドは future_error

このメソッドまたは make_ready_at_thread_exit が同じ関連する非同期の状態がの packaged_task のオブジェクトに対して既に呼び出された場合、promise_already_satisfiedのエラー コードがある future_error メソッドはをスローします。

それ以外の場合、この演算子は fn が関連する非同期状態に格納されている呼び出し可能オブジェクトである INVOKE(fn, args..., Ty)を呼び出します。関連する非同期状態から返された結果、および状態を準備完了に移動すると、戻り値はアトミックに格納されます。その結果、関連する非同期ブロック状態でどのスレッドでもブロックを除外されます。

必要条件

将来のヘッダー:

名前空間: std

参照

関連項目

packaged_task クラス

<future>