Costruttore task::task
Costruisce un oggetto 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
);
Parametri
_Ty
Il tipo del parametro che l'attività deve essere costruita._Param
Il parametro che l'attività deve essere costruita.Ciò può essere un'espressione lambda, un oggetto funzione, un oggetto di task_completion_event<result_type> , o un Windows::Foundation::IAsyncInfo se si utilizza le attività nell'applicazione di stile di metropolitana.L'espressione lambda o l'oggetto funzione deve essere un equivalente del tipo a std::function<X(void)>, dove X può essere una variabile di tipo result_type, task<result_type>, o un Windows::Foundation::IAsyncInfo nelle applicazioni di stile di metropolitana._Token
Il token di annullamento da associare a questa attività.Un'attività creata senza un token di annullamento non può essere annullata.In modo implicito riceve **cancellation_token::none()**token._Other
Oggetto task di origine._CancellationToken
Note
Il costruttore predefinito per task è presente solo per consentire le attività essere utilizzato all'interno di contenitori.Un'attività costruita impostazione predefinita non può essere utilizzato finché non verrà assegnato un'attività valida.I metodi come get, wait o then genereranno un'eccezione di invalid_argument una volta chiamati a un'impostazione predefinita ha creato l'attività.
Un'attività creata da task_completion_event completi (e visualizzare le relative continuazioni) quando l'evento di completamento delle attività è impostato su.
La versione del costruttore che accetta un token di annullamento crea un'attività che può essere chiusa utilizzando cancellation_token_source il token è stata recuperata da.Le attività create senza un token di annullamento non sono annullabili.
Le attività create da Windows::Foundation::IAsyncInfo stringa o un'espressione lambda che restituisce un intervallo di IAsyncInfo lo stato di terminale quando le finestre incluse operazione asincrona runtime o azione completa.Analogamente, le attività create da un lamda che restituisce un intervallo di task<result_type> lo stato di terminale quando l'attività interna raggiunge lo stato di terminale e non quando il lamda restituisce.
task si comporta come un puntatore intelligente ed è certi di passare intorno per valore.È possibile accedere da più thread senza la necessità dei blocchi.
Gli overload del costruttore che accettano un'interfaccia di Windows::Foundation::IAsyncInfo o un'espressione lambda che restituisce tale interfaccia, sono disponibili solo per lo stile di metropolitana.
Per ulteriori informazioni, vedere Parallelismo delle attività (runtime di concorrenza).
Requisiti
intestazione: ppltasks.h
Concorrenza diSpazio dei nomi: