Task Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет асинхронную операцию.
public ref class Task : IAsyncResult
public ref class Task : IAsyncResult, IDisposable
public class Task : IAsyncResult
public class Task : IAsyncResult, IDisposable
type Task = class
interface IAsyncResult
type Task = class
interface IAsyncResult
interface IDisposable
Public Class Task
Implements IAsyncResult
Public Class Task
Implements IAsyncResult, IDisposable
- Наследование
-
Task
- Производный
- Реализации
Комментарии
Дополнительные сведения об этом API см. в разделе Дополнительные примечания API для задачи.
Конструкторы
Task(Action) |
Инициализирует новую задачу Task с заданным действием. |
Task(Action, CancellationToken) |
Инициализирует новую задачу Task с заданным действием и токеном CancellationToken. |
Task(Action, CancellationToken, TaskCreationOptions) |
Инициализирует новую задачу Task с заданными действием и параметрами создания. |
Task(Action, TaskCreationOptions) |
Инициализирует новую задачу Task с заданными действием и параметрами создания. |
Task(Action<Object>, Object) |
Инициализирует новую задачу Task с заданным действием и состоянием. |
Task(Action<Object>, Object, CancellationToken) |
Инициализирует новый Task с указанным действием, состоянием и CancellationToken. |
Task(Action<Object>, Object, CancellationToken, TaskCreationOptions) |
Инициализирует новую задачу Task с заданными действием, состоянием и параметрами. |
Task(Action<Object>, Object, TaskCreationOptions) |
Инициализирует новую задачу Task с заданными действием, состоянием и параметрами. |
Свойства
AsyncState |
Получает объект состояния, предоставленный при создании задачи Task, или значение null, если объект не предоставлен. |
CompletedTask |
Возвращает задачу, которая уже завершилась успешно. |
CreationOptions |
Возвращает объект TaskCreationOptions, используемый для создания данной задачи. |
CurrentId |
Возвращает идентификатор выполняющейся в настоящее время задачи Task. |
Exception |
Возвращает объект AggregateException, который привел к преждевременному завершению задачи Task. Если задача Task завершилась успешно или еще не создала ни одного исключения, возвращает значение |
Factory |
Предоставляет доступ к фабричным методам для создания и настройки экземпляров Task и Task<TResult>. |
Id |
Возвращает идентификатор указанного экземпляра Task. |
IsCanceled |
Возвращает значение, указывающее, завершилось ли выполнение данного экземпляра Task из-за отмены. |
IsCompleted |
Получает значение, указывающее, завершена ли задача. |
IsCompletedSuccessfully |
Возвращает значение, указывающее, выполнена ли задача. |
IsFaulted |
Возвращает значение, указывающее, завершилась ли задача Task из-за необработанного исключения. |
Status |
Получает состояние TaskStatus данной задачи. |
Методы
ConfigureAwait(Boolean) |
Настраивает объект типа awaiter, используемый для данного объекта Task. |
ConfigureAwait(ConfigureAwaitOptions) |
Настраивает объект типа awaiter, используемый для данного объекта Task. |
ContinueWith(Action<Task,Object>, Object) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии и которое выполняется после завершения целевой задачи Task. |
ContinueWith(Action<Task,Object>, Object, CancellationToken) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии и маркер отмены и которое выполняется асинхронно после завершения целевой задачи Task. |
ContinueWith(Action<Task,Object>, Object, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии и маркер отмены и которое выполняется после завершения целевой задачи Task. Продолжение выполняется на основе набора указанных условий и использует указанный планировщик. |
ContinueWith(Action<Task,Object>, Object, TaskContinuationOptions) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии и которое выполняется после завершения целевой задачи Task. Продолжение выполняется на основе набора указанных условий. |
ContinueWith(Action<Task,Object>, Object, TaskScheduler) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии и выполняется асинхронно после завершения целевой задачи Task. Продолжение использует указанный планировщик. |
ContinueWith(Action<Task>) |
Создает продолжение, которое выполняется асинхронно после завершения выполнения целевой задачи Task. |
ContinueWith(Action<Task>, CancellationToken) |
Создает продолжение, которое получает маркер отмены и которое выполняется асинхронно после завершения целевой задачи Task. |
ContinueWith(Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Создает продолжение, которое выполняется после завершения целевой задачи в соответствии с заданными параметрами TaskContinuationOptions. Продолжение получает маркер отмены и использует указанный планировщик. |
ContinueWith(Action<Task>, TaskContinuationOptions) |
Создает продолжение, которое выполняется после завершения целевой задачи в соответствии с заданными параметрами TaskContinuationOptions. |
ContinueWith(Action<Task>, TaskScheduler) |
Создает продолжение, которое выполняется асинхронно после завершения выполнения целевой задачи Task. Продолжение использует указанный планировщик. |
ContinueWith<TResult>(Func<Task,Object,TResult>, Object) |
Создает продолжение, которое получает предоставленные вызывающей стороной сведения о состоянии, выполняется асинхронно после завершения целевой задачи Task и возвращает значение. |
ContinueWith<TResult>(Func<Task,Object,TResult>, Object, CancellationToken) |
Создает продолжение, которое выполняется асинхронно после завершения целевой задачи Task и возвращает значение. Продолжение получает предоставленные вызывающей стороной сведения и маркер отмены. |
ContinueWith<TResult>(Func<Task,Object,TResult>, Object, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Создает продолжение, которое выполняется на основе указанных параметров продолжения задачи после завершения целевой задачи Task и которое возвращает значение. Продолжение получает предоставленные вызывающей стороной сведения и маркер отмены, а также использует указанный планировщик. |
ContinueWith<TResult>(Func<Task,Object,TResult>, Object, TaskContinuationOptions) |
Создает продолжение, которое выполняется на основе указанных параметров продолжения задачи после завершения целевой задачи Task. Продолжение получает предоставленные вызывающей стороной сведения. |
ContinueWith<TResult>(Func<Task,Object,TResult>, Object, TaskScheduler) |
Создает продолжение, которое выполняется асинхронно после завершения выполнения целевой задачи Task. Продолжение получает предоставленные вызывающей стороной сведения и использует указанный планировщик. |
ContinueWith<TResult>(Func<Task,TResult>) |
Создает продолжение, которое выполняется асинхронно после завершения целевой задачи Task<TResult> и возвращает значение. |
ContinueWith<TResult>(Func<Task,TResult>, CancellationToken) |
Создает продолжение, которое выполняется асинхронно после завершения целевой задачи Task и возвращает значение. Продолжение получает маркер отмены. |
ContinueWith<TResult>(Func<Task,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Создает продолжение, которое выполняется в соответствии с заданными параметрами и которое возвращает значение. Продолжение получает маркер отмены и использует указанный планировщик. |
ContinueWith<TResult>(Func<Task,TResult>, TaskContinuationOptions) |
Создает продолжение, которое выполняется в соответствии с заданными параметрами и которое возвращает значение. |
ContinueWith<TResult>(Func<Task,TResult>, TaskScheduler) |
Создает продолжение, которое выполняется асинхронно после завершения целевой задачи Task и возвращает значение. Продолжение использует указанный планировщик. |
Delay(Int32) |
Создает задачу, которая завершается через заданное количество миллисекунд. |
Delay(Int32, CancellationToken) |
Создает отменяемую задачу, которая завершается через заданное количество миллисекунд. |
Delay(TimeSpan) |
Создает задачу, которая завершается через заданное время. |
Delay(TimeSpan, CancellationToken) |
Создает отменяемую задачу, которая завершается через заданное время. |
Delay(TimeSpan, TimeProvider) |
Создает задачу, которая завершается через заданное время. |
Delay(TimeSpan, TimeProvider, CancellationToken) |
Создает отменяемую задачу, которая завершается через заданное время. |
Dispose() |
Освобождает все ресурсы, используемые текущим экземпляром класса Task. |
Dispose(Boolean) |
Удаляет задачуTask, освобождая все используемые ею неуправляемые ресурсы. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FromCanceled(CancellationToken) |
Создает задачу Task, которая завершилась из-за отмены с помощью указанного маркера отмены. |
FromCanceled<TResult>(CancellationToken) |
Создает задачу Task<TResult>, которая завершилась из-за отмены с помощью указанного маркера отмены. |
FromException(Exception) |
Создает задачу Task, которая завершилась с указанным исключением. |
FromException<TResult>(Exception) |
Создает задачу Task<TResult>, которая завершилась с указанным исключением. |
FromResult<TResult>(TResult) |
Создает Task<TResult>, которая завершается удачно с указанным результатом. |
GetAwaiter() |
Получает объект типа awaiter, используемый для данного объекта Task. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
Run(Action) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает объект Task, представляющий эту работу. |
Run(Action, CancellationToken) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает объект Task, представляющий эту работу. Токен отмены позволяет отменить задачу, если она не была начата. |
Run(Func<Task>) |
Ставит в очередь указанную работу для запуска в пуле потоков и возвращает прокси для задачи, возвращаемой функцией |
Run(Func<Task>, CancellationToken) |
Ставит в очередь указанную работу для запуска в пуле потоков и возвращает прокси для задачи, возвращаемой функцией |
Run<TResult>(Func<Task<TResult>>) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает прокси для задачи |
Run<TResult>(Func<Task<TResult>>, CancellationToken) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает прокси для задачи |
Run<TResult>(Func<TResult>) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает объект Task<TResult>, представляющий эту работу. Токен отмены позволяет отменить задачу, если она не была начата. |
Run<TResult>(Func<TResult>, CancellationToken) |
Ставит в очередь заданную работу для запуска в пуле потоков и возвращает объект |
RunSynchronously() |
Синхронно выполняет задачу Task в текущем планировщике TaskScheduler. |
RunSynchronously(TaskScheduler) |
Синхронно выполняет задачу Task в предоставленном планировщике TaskScheduler. |
Start() |
Запускает задачу Task, планируя ее выполнение в текущем планировщике TaskScheduler. |
Start(TaskScheduler) |
Запускает задачу Task, планируя ее выполнение в заданном планировщике TaskScheduler. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Wait() |
Ожидает завершения выполнения задачи Task. |
Wait(CancellationToken) |
Ожидает завершения выполнения задачи Task. Ожидание завершается, если токен отмены отменяется до завершения задачи. |
Wait(Int32) |
Ожидает завершения задачи Task в течение указанного числа миллисекунд. |
Wait(Int32, CancellationToken) |
Ожидает завершения выполнения задачи Task. Ожидание завершается, если время ожидания истекает или токен отмены отменяется до завершения задачи. |
Wait(TimeSpan) |
Ожидает завершения выполнения задач Task в течение указанного временного периода. |
Wait(TimeSpan, CancellationToken) |
Ожидает завершения выполнения задачи Task. |
WaitAll(IEnumerable<Task>, CancellationToken) |
Представляет асинхронную операцию. |
WaitAll(ReadOnlySpan<Task>) |
Представляет асинхронную операцию. |
WaitAll(Task[]) |
Ожидает завершения выполнения всех указанных объектов Task. |
WaitAll(Task[], CancellationToken) |
Ожидает завершения выполнения всех указанных объектов Task, пока ожидание не будет отменено. |
WaitAll(Task[], Int32) |
Ожидает завершения выполнения всех указанных объектов Task в течение указанного числа миллисекунд. |
WaitAll(Task[], Int32, CancellationToken) |
Ожидает завершения выполнения всех указанных объектов Task в течение указанного числа миллисекунд или до отмены ожидания. |
WaitAll(Task[], TimeSpan) |
Ожидает завершения выполнения всех указанных отменяемых объектов Task в течение указанного временного интервала. |
WaitAny(Task[]) |
Ожидает завершения выполнения любого из указанных объектов Task. |
WaitAny(Task[], CancellationToken) |
Ожидает завершения выполнения всех указанных объектов Task, пока ожидание не будет отменено. |
WaitAny(Task[], Int32) |
Ожидает завершения выполнения любого из указанных объектов Task в течение указанного числа миллисекунд. |
WaitAny(Task[], Int32, CancellationToken) |
Ожидает завершения выполнения всех указанных объектов Task в течение указанного числа миллисекунд или до отмены токена отмены. |
WaitAny(Task[], TimeSpan) |
Ожидает завершения выполнения любого из указанных отменяемых объектов Task в течение указанного временного интервала. |
WaitAsync(CancellationToken) |
Возвращает объект , Task который завершится после завершения или Task при запросе отмены указанного CancellationToken объекта. |
WaitAsync(TimeSpan) |
Возвращает объект , Task который будет завершен по завершении или Task по истечении указанного времени ожидания. |
WaitAsync(TimeSpan, CancellationToken) |
Возвращает объект , Task который будет завершен после завершения, Task по истечении указанного времени ожидания или при запросе отмены указанного CancellationToken объекта. |
WaitAsync(TimeSpan, TimeProvider) |
Возвращает объект , Task который будет завершен по завершении или Task по истечении указанного времени ожидания. |
WaitAsync(TimeSpan, TimeProvider, CancellationToken) |
Возвращает объект , Task который будет завершен после завершения, Task по истечении указанного времени ожидания или при запросе отмены указанного CancellationToken объекта. |
WhenAll(IEnumerable<Task>) |
Создает задачу, которая будет выполнена, когда все объекты Task в перечисляемой коллекции будут завершены. |
WhenAll(ReadOnlySpan<Task>) |
Представляет асинхронную операцию. |
WhenAll(Task[]) |
Создает задачу, которая будет выполнена, когда все Task объекты в массиве будут завершены. |
WhenAll<TResult>(IEnumerable<Task<TResult>>) |
Создает задачу, которая будет выполнена, когда все объекты Task<TResult> в перечисляемой коллекции будут завершены. |
WhenAll<TResult>(ReadOnlySpan<Task<TResult>>) |
Представляет асинхронную операцию. |
WhenAll<TResult>(Task<TResult>[]) |
Создает задачу, которая будет выполнена, когда все Task<TResult> объекты в массиве будут завершены. |
WhenAny(IEnumerable<Task>) |
Создает задачу, которая будет выполнена после выполнения любой из предоставленных задач. |
WhenAny(ReadOnlySpan<Task>) |
Представляет асинхронную операцию. |
WhenAny(Task, Task) |
Создает задачу, которая будет завершена после завершения любой из предоставленных задач. |
WhenAny(Task[]) |
Создает задачу, которая будет выполнена после выполнения любой из предоставленных задач. |
WhenAny<TResult>(IEnumerable<Task<TResult>>) |
Создает задачу, которая будет выполнена после выполнения любой из предоставленных задач. |
WhenAny<TResult>(ReadOnlySpan<Task<TResult>>) |
Представляет асинхронную операцию. |
WhenAny<TResult>(Task<TResult>, Task<TResult>) |
Создает задачу, которая будет завершена после завершения любой из предоставленных задач. |
WhenAny<TResult>(Task<TResult>[]) |
Создает задачу, которая будет выполнена после выполнения любой из предоставленных задач. |
WhenEach(IEnumerable<Task>) |
Представляет асинхронную операцию. |
WhenEach(ReadOnlySpan<Task>) |
Представляет асинхронную операцию. |
WhenEach(Task[]) |
Представляет асинхронную операцию. |
WhenEach<TResult>(IEnumerable<Task<TResult>>) |
Представляет асинхронную операцию. |
WhenEach<TResult>(ReadOnlySpan<Task<TResult>>) |
Представляет асинхронную операцию. |
WhenEach<TResult>(Task<TResult>[]) |
Представляет асинхронную операцию. |
Yield() |
Создает поддерживающий ожидание объект задачи, который асинхронным образом выдает возврат текущему контексту, когда его ожидают. |
Явные реализации интерфейса
IAsyncResult.AsyncWaitHandle |
Возвращает дескриптор WaitHandle, который можно использовать для ожидания завершения задачи. |
IAsyncResult.CompletedSynchronously |
Получает значение, указывающее, синхронно ли выполнена операция. |
Методы расширения
AsyncWait<TException>(Task) |
Представляет асинхронную операцию. |
AwaitWithTimeout(Task, TimeSpan) |
Представляет асинхронную операцию. |
ToApm(Task, AsyncCallback, Object) |
Представляет асинхронную операцию. |
ToApmEnd(IAsyncResult) |
Представляет асинхронную операцию. |
ToApmEnd<TResult>(IAsyncResult) |
Представляет асинхронную операцию. |
Wait(Task, TimeSpan, Action<Exception,TimeSpan,String>, String) |
Представляет асинхронную операцию. |
WaitForCompletion(Task) |
Представляет асинхронную операцию. |
WaitForCompletionNoSpin(Task) |
Представляет асинхронную операцию. |
WaitForCompletionNoSpin(Task, TimeSpan) |
Представляет асинхронную операцию. |
WaitAsync(Task, TimeSpan, TimeProvider, CancellationToken) |
Представляет асинхронную операцию. |
DispatcherOperationWait(Task) |
Ожидает завершения базовой операции DispatcherOperation в течение неограниченного времени. |
DispatcherOperationWait(Task, TimeSpan) |
Ожидает истечения заданного количества времени для базового DispatcherOperation. |
IsDispatcherOperationTask(Task) |
Возвращает значение, указывающее, связан ли данный Task с DispatcherOperation. |
AsAsyncAction(Task) |
Возвращает асинхронное действие среды выполнения Windows, представляющее запущенную задачу. |
Применяется к
Потокобезопасность
Все члены Task, за исключением Dispose(), являются потокобезопасными и могут использоваться из нескольких потоков одновременно.
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по