Udostępnij za pośrednictwem


create_task — Funkcja

Tworzy obiekt PPL zadania.create_task może być używany wszędzie, gdzie użyto konstruktora zadania.To jest przewidziane przede wszystkim dla wygody, ponieważ umożliwia korzystanie ze słowa kluczowego auto podczas tworzenia zadań.

template<
   typename _Ty
>
__declspec(
   noinline
) auto create_task(_Ty _Param, const task_options& _TaskOptions = task_options()) -> task<typename details::_TaskTypeFromParam<_Ty>::_Type>;

template<
   typename _ReturnType
>
__declspec(
   noinline
) task<_ReturnType> create_task(const task<_ReturnType>& _Task);

Parametry

  • _Ty
    Typ parametru, na podstawie którego ma zostać skonstruowane zadanie.

  • _ReturnType

  • _Param
    Parametr, na podstawie którego ma zostać skonstruowane zadanie.Może to być wyrażenie lambda lub obiekt funkcji, obiekt task_completion_event, inny obiekt task lub interfejs Windows::Foundation::IAsyncInfo, jeśli używasz zadań w swojej aplikacji dla Sklepu Windows.

  • _TaskOptions

  • _Task

Wartość zwracana

Nowe zadanie typu T, wywnioskowane z _Param.

Uwagi

The first overload behaves like a task constructor that takes a single parameter.

Drugie przeciążenie kojarzy token anulowania dostarczany z nowo utworzonym zadaniem.Jeśli używasz tego przeciążenia, nie możesz przekazać innego obiektu task jako pierwszego parametru.

Typ zwracanego zadania jest wnioskowany z pierwszego parametru do funkcji.Jeśli parametrem _Param jest task_completion_event<T>, task<T> lub funktor, który zwraca albo typ T albo task<T>, typem utworzonego zadania jest task<T>.

W aplikacji do Sklepu Windows jeśli parametr _Param jest typu Windows::Foundation::IAsyncOperation<T>^ lub Windows::Foundation::IAsyncOperationWithProgress<T,P>^ albo funktorem, który zwraca jeden z tych typów, utworzone zadanie będzie mieć typ task<T>.Jeśli parametr _Param jest typu Windows::Foundation::IAsyncAction^ lub Windows::Foundation::IAsyncActionWithProgress<P>^ albo funktorem, który zwraca jeden z tych typów, utworzone zadanie będzie mieć typ task<void>.

Wymagania

Nagłówek: ppltasks.h

Przestrzeń nazw: concurrency

Zobacz też

Informacje

concurrency — Przestrzeń nazwy

task — Klasa

Koncepcje

Równoległość zadania (współbieżność środowiska wykonawczego)