Поделиться через


Конструктор 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
    Параметр из которого задача для построения.Это может быть лямбда-выражения, объектом функции, объектом task_completion_event<result_type> или Windows::Foundation::IAsyncInfo при использовании задачи в приложении в стиле Metro.Объект lambda или функции должен быть числом в std::function<X(void)>, где x может быть переменной типа result_type, task<result_type> или Windows::Foundation::IAsyncInfo в приложениях в стиле Metro.

  • _Token
    Токен отмены, который требуется связать с данной задачей.Задача создается без токена отмены нельзя отменить.Она неявно возвращает токен cancellation_token::none().

  • _Other
    Объект task источника.

  • _CancellationToken

Заметки

Конструктор по умолчанию для task присутствует, только, чтобы разрешить задачи для использования внутри контейнеров.Задачу, построенную значение по умолчанию нельзя использовать, пока не будет присвоен допустимая задачи на него.Такие методы, как get, wait или then будут вызывать исключение вызывается invalid_argument значение по умолчанию построение задачу.

Задача, которая создается из task_completion_event заканчивается (и имеют свои продолжения запланировано), когда событие завершения задачи задано.

Версия конструктора, который принимает токен отмены создает задачу, которая может быть отменено с помощью cancellation_token_source токен получена из.Задачи, созданные без токена отмены не могут быть отменены.

Задачи, созданные из интерфейса Windows::Foundation::IAsyncInfo или lambda, который возвращает достигаемость интерфейса IAsyncInfo их конечное состояние при, заключенные окна асинхронной операции или действия во время выполнения.Аналогично, задачи, созданные из lamda, которое возвращает достигаемость task<result_type> их конечное состояние, когда произошла внутренняя задача достигает его окончательное состояние, а не при lamda.

task ведет себя как smart указатель и безопасно передавать по значению.Он может быть получен несколькими потоками без блокирует.

Перегруженные варианты конструктора, которые принимают интерфейс Windows::Foundation::IAsyncInfo или lambda возвращение такой интерфейс, доступны только приложениям в стиле Metro.

Дополнительные сведения см. в разделе Параллелизм задач (среда выполнения с параллелизмом).

Требования

заголовок: ppltasks.h

Параллелизм пространство имен:

См. также

Ссылки

Класс task (среда выполнения с параллелизмом)