task_handle 類別
task_handle 類別代表個別的平行工作項目。 它會封裝執行工作所需的指示和資料。
template<
typename _Function
>
class task_handle : public ::Concurrency::details::_UnrealizedChore;
參數
- _Function
欲叫用以執行task_handle物件代表之工作的函式物件的類型。
成員
公用建構函式
名稱 |
描述 |
---|---|
建構新的 task_handle 物件。 工作的工作是透過教用建構函式當作參數的函式來執行的。 |
|
終結 task_handle 物件。 |
公用運算子
名稱 |
描述 |
---|---|
函式會呼叫運算子,執行階段會叫用此運算子來執行工作控制代碼的工作。 |
備註
task_handle 物件可用來配合 structured_task_group 或更一般的 task_group 物件,將工作分解成平行的工作。 如需詳細資訊,請參閱工作平行處理原則 (並行執行階段)。
請注意,task_handle 物件的建立者負責維護所建立之 task_handle 物件的存留期,直到不再並行執行階段不再需要此物件。 通常,這表示 task_handle 物件不能解構,直到呼叫該物件佇列之 task_group 或 structured_task_group 的 wait或run_and_wait方法為止。
task_handle 物件通常會與 C + + Lambdas 一起使用。 因為不知道 Lambda 的真正型別,因此 make_task 函式通常用來建立 task_handle 物件。
執行階段會建立傳遞給 task_handle 物件的工作函式複本。 因此,在您傳遞給 task_handle 物件之函式物件中發生的任何狀態變更都不會在該函式物件的複本中出現。
繼承階層架構
_Chore
_AllocBase
_UnrealizedChore
需求
標頭: ppl.h
**命名空間:**並行
請參閱
參考
structured_task_group::wait 方法