task::task 建構函式
建構 task 物件。
task();
template<
typename _Ty
>
explicit task(
_Ty_Param
);
template<
typename _Ty
>
explicit task(
_Ty_Param,
cancellation_token _Token
);
task(
const task& _Other
);
task(
task&& _Other
);
參數
_Ty
建構工作參數的型別。_Param
要從其中的工作是建構參數。這可能是 lambda 時,函式物件, task_completion_event<result_type>物件或 Windows::Foundation::IAsyncInfo,如果您使用您的地鐵樣式應用程式中的工作。Lambda 或函式物件也會是相等的型別std::function<X(void)>,其中 x 可為型別的變數result_type, task<result_type>,或在 [地鐵樣式應用程式中的 Windows::Foundation::IAsyncInfo。_Token
取消語彙基元相關於這項工作。無法取消而不需取消語彙基元建立的工作。它隱含地接收語彙基元cancellation_token::none()。_Other
來源 task 物件。_CancellationToken
備註
預設建構函式task只會出現為了要讓容器內使用的工作。預設的建構工作不能使用,直到您將有效的工作指派給它。項目欄位get, wait或then就會擲回 invalid_argument 上預設的建構工作呼叫時的例外狀況。
任務從建立task_completion_event就能完成 (並將已排程的接續符號) 當設定任務的完成事件。
建構函式可接受的取消通知語彙基元的版本建立的工作,可以使用不會收取cancellation_token_source語彙基元,已經從取得。沒有可取消而不需取消語彙基元建立的工作。
從所建立的工作Windows::Foundation::IAsyncInfo介面或將 lambda 會傳回IAsyncInfo介面封入型 Windows 執行階段的非同步作業或動作完成時,達到其終端機的狀態。同樣地,會傳回 lamda 中所建立的工作**task<result_type>**的內部工作到達成終端機的狀態,而非 lamda 傳回到達其終端機的狀態。
task模仿的智慧型指標,則您可以放心傳值方式傳遞的周圍。它可以存取多個執行緒,而不需要鎖定。
建構函式多載接受 Windows::Foundation::IAsyncInfo 介面或 lambda,傳回該介面,則只能用於 [地鐵樣式應用程式。
如需詳細資訊,請參閱 工作平行處理原則 (並行執行階段)。
需求
標頭: ppltasks.h
Namespace: 並行存取