Condividi tramite


Classe task (runtime di concorrenza)

La classe di task (PPL) la libreria PPL.Un oggetto di task rappresenta il lavoro che può essere eseguito in modo asincrono e contemporaneamente alle altre attività e lavoro in parallelo prodotti dagli algoritmi paralleli nel runtime di concorrenza.Produce un risultato di tipo _ResultType sul completamento.Le attività di tipo task<void> non forniscono risultato.Un'attività può essere attesa su ed essere annullata indipendentemente dalle altre attività.Può anche essere composte con altre attività utilizzando le continuazioni (then) e join (when_all) e modelli choice (when_any).

template <
   typename _Type
>
class task;

template <>
class task<void>;

template<
   typename _ReturnType
>
class task;

Parametri

  • _Type

  • T

  • _ReturnType
    Il tipo di risultato di questa attività.

Membri

Hh750113.collapse_all(it-it,VS.110).gifTypedef pubblici

Nome

Descrizione

result_type

Il tipo di risultato che un oggetto di questa classe fornisce.

Hh750113.collapse_all(it-it,VS.110).gifCostruttori pubblici

Nome

Descrizione

Costruttore task::task

Di overload.Costruisce un oggetto task.

Hh750113.collapse_all(it-it,VS.110).gifMetodi pubblici

Nome

Descrizione

Metodo task::get

Di overload.Restituisce il risultato di questa attività è fornito.Se l'attività non è in uno stato terminale, una chiamata a get attenderà il completamento dell'attività.Questo metodo non restituisce un valore una volta chiamato su un'attività con result_type di void.

Metodo task::is_apartment_aware

Determina se l'attività annullare il wrapping un'interfaccia runtime di IAsyncInfo di windows o è discesa da tale attività.

Metodo task::then

Di overload.Aggiunge un'attività di continuazione per questa attività.

Metodo task::wait

Attendere il completamento di questa attività raggiungere uno stato di terminal.È possibile che wait esegua l'attività inline, se tutte le dipendenze di attività vengono soddisfatte e non è già stata effettuata per l'esecuzione da un componente BackgroundWorker.

Hh750113.collapse_all(it-it,VS.110).gifOperatori pubblici

Nome

Descrizione

Operatore task::operator!=

Di overload.Determina se due oggetti di task rappresentano le attività interne diversi.

Operatore task::operator=

Di overload.Sostituire il contenuto di un oggetto di task con un altro.

Operatore task::operator==

Di overload.Determina se due oggetti di task rappresentano la stessa attività interna.

Note

Per ulteriori informazioni, vedere Parallelismo delle attività (runtime di concorrenza).

Gerarchia di ereditarietà

task

Requisiti

intestazione: ppltasks.h

Concorrenza diSpazio dei nomi:

Vedere anche

Riferimenti

Spazio dei nomi concurrency