TaskFactory Класс

Определение

Предоставляет поддержку создания и планирования объектов Task.Provides support for creating and scheduling Task objects.

public ref class TaskFactory
public class TaskFactory
type TaskFactory = class
Public Class TaskFactory
Наследование
TaskFactory

Примеры

В следующем примере свойство static Factory используется для выполнения двух вызовов метода TaskFactory.StartNew.The following example uses the static Factory property to make two calls to the TaskFactory.StartNew method. Первый заполняет массив именами файлов в каталоге MyDocuments пользователя, а второй заполняет массив именами подкаталогов в каталоге MyDocuments пользователя ().The first populates an array with the names of files in the user's MyDocuments directory, while the second populates an array with the names of subdirectories of the user's MyDocuments directory. Затем он вызывает метод TaskFactory.ContinueWhenAll(Task[], Action<Task[]>), который отображает сведения о количестве файлов и каталогов в двух массивах после завершения выполнения первых двух задач.It then calls the TaskFactory.ContinueWhenAll(Task[], Action<Task[]>) method, which displays information about the number of files and directories in the two arrays after the first two tasks have completed execution.

using System;
using System.IO;
using System.Threading.Tasks;

public class Example
{
   public static void Main()
   {
      Task[] tasks = new Task[2];
      String[] files = null;
      String[] dirs = null;
      String docsDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

      tasks[0] = Task.Factory.StartNew( () => files = Directory.GetFiles(docsDirectory));
      tasks[1] = Task.Factory.StartNew( () => dirs = Directory.GetDirectories(docsDirectory));

      Task.Factory.ContinueWhenAll(tasks, completedTasks => {
                                             Console.WriteLine("{0} contains: ", docsDirectory);
                                             Console.WriteLine("   {0} subdirectories", dirs.Length);
                                             Console.WriteLine("   {0} files", files.Length);
                                          } );
   }
}
// The example displays output like the following:
//       C:\Users\<username>\Documents contains:
//          24 subdirectories
//          16 files
Imports System.IO
Imports System.Threading.Tasks

Module Example
   Public Sub Main()
      Dim tasks(1) As Task
      Dim files() As String = Nothing
      Dim dirs() As String = Nothing
      Dim docsDirectory As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
      
      tasks(0) = Task.Factory.StartNew( Sub()
                                           files = Directory.GetFiles(docsDirectory)
                                        End Sub )
      tasks(1) = Task.Factory.StartNew( Sub()
                                           dirs = Directory.GetDirectories(docsDirectory)
                                        End Sub )
      Task.Factory.ContinueWhenAll(tasks, Sub(completedTasks)
                                             Console.WriteLine("{0} contains: ", docsDirectory)
                                             Console.WriteLine("   {0} subdirectories", dirs.Length)
                                             Console.WriteLine("   {0} files", files.Length)
                                          End Sub)
   End Sub
End Module
' The example displays output like the following:
'       C:\Users\<username>\Documents contains:
'          24 subdirectories
'          16 files

Комментарии

.NET Framework предоставляет две фабрики для создания и планирования задач:The .NET Framework provides two factories for creating and scheduling tasks:

  • Класс TaskFactory, который создает объекты Task и Task<TResult>.The TaskFactory class, which creates Task and Task<TResult> objects. Перегрузки этого метода можно вызывать для создания и выполнения задачи, для которой требуются аргументы, отличные от аргументов по умолчанию.You can call the overloads of this method to create and execute a task that requires non-default arguments.

    Предупреждение

    Начиная с .NET Framework 4.5.NET Framework 4.5, метод Task.Run предоставляет самый простой способ создать задачу со значениями конфигурации по умолчанию и немедленно запустить ее.Starting with the .NET Framework 4.5.NET Framework 4.5, the Task.Run method provides the easiest way to create a task with default configuration values and start it immediately.

  • Класс TaskFactory<TResult>, который создает объекты Task<TResult>.The TaskFactory<TResult> class, which creates Task<TResult> objects.

Класс TaskFactory позволяет выполнять следующие действия:The TaskFactory class allows you to do the following:

  • Создайте задачу и запустите ее немедленно, вызвав метод StartNew.Create a task and start it immediately by calling the StartNew method.

    Предупреждение

    Начиная с .NET Framework 4.5.NET Framework 4.5, метод Task.Run предоставляет самый простой способ создать задачу со значениями конфигурации по умолчанию и немедленно запустить ее.Starting with the .NET Framework 4.5.NET Framework 4.5, the Task.Run method provides the easiest way to create a task with default configuration values and start it immediately.

  • Создайте задачу, которая запускается при завершении одной из задач в массиве путем вызова метода ContinueWhenAny.Create a task that starts when any one of the tasks in an array has completed by calling the ContinueWhenAny method.

  • Создайте задачу, которая запускается после завершения всех задач в массиве путем вызова метода ContinueWhenAll.Create a task that starts when all the tasks in an array have completed by calling the ContinueWhenAll method.

Статическое свойство Task<TResult>.Factory возвращает объект TaskFactory<TResult> по умолчанию.The static Task<TResult>.Factory property returns a default TaskFactory<TResult> object. Можно также вызвать один из конструкторов класса TaskFactory для настройки объектов Task, создаваемых классом TaskFactory.You can also call one of the TaskFactory class constructors to configure the Task objects that the TaskFactory class creates. В следующем примере настраивается новый объект TaskFactory для создания задач с указанным токеном отмены, параметрами создания задач, параметрами продолжения и настраиваемым планировщиком задач.The following example configures a new TaskFactory object to create tasks that have a specified cancellation token, task creation options, continuation options, and a customized task scheduler.

using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;

class Example
{
   static CancellationTokenSource cts = new CancellationTokenSource();
   
   static TaskFactory factory = new TaskFactory(
      cts.Token,
      TaskCreationOptions.PreferFairness,
      TaskContinuationOptions.ExecuteSynchronously,
      new CustomScheduler());

   static void Main()
   {
      var t2 = factory.StartNew(() => DoWork());
      cts.Dispose();
   }

   static void DoWork() {/*...*/ }
}
Imports System.Collections.Generic
Imports System.Threading
Imports System.Threading.Tasks

Module Example
   Public Sub Main()
      Dim cts As New CancellationTokenSource()
      Dim factory As New TaskFactory(cts.Token,
                                     TaskCreationOptions.PreferFairness,
                                     TaskContinuationOptions.ExecuteSynchronously,
                                     New CustomScheduler())

      Dim t2 = factory.StartNew(Sub() DoWork())
      cts.Dispose()
   End Sub

   Sub DoWork()
      ' ...
   End Sub
End Module

В большинстве случаев не нужно создавать новый экземпляр TaskFactory.In most cases, you do not have to instantiate a new TaskFactory instance. Вместо этого можно использовать свойство Task.Factory, которое возвращает объект фабрики, который использует значения по умолчанию.Instead, you can use the Task.Factory property, which returns a factory object that uses default values. Затем можно вызвать его методы для запуска новых задач или определения продолжений задач.You can then call its methods to start new tasks or define task continuations. Иллюстрации см. в примере.For an illustration, see the example.

Конструкторы

TaskFactory()

Инициализирует экземпляр TaskFactory с конфигурацией по умолчанию.Initializes a TaskFactory instance with the default configuration.

TaskFactory(CancellationToken)

Инициализирует экземпляр TaskFactory с заданной конфигурацией.Initializes a TaskFactory instance with the specified configuration.

TaskFactory(CancellationToken, TaskCreationOptions, TaskContinuationOptions, TaskScheduler)

Инициализирует экземпляр TaskFactory с заданной конфигурацией.Initializes a TaskFactory instance with the specified configuration.

TaskFactory(TaskCreationOptions, TaskContinuationOptions)

Инициализирует экземпляр TaskFactory с заданной конфигурацией.Initializes a TaskFactory instance with the specified configuration.

TaskFactory(TaskScheduler)

Инициализирует экземпляр TaskFactory с заданной конфигурацией.Initializes a TaskFactory instance with the specified configuration.

Свойства

CancellationToken

Возвращает токен отмены по умолчанию для этой фабрики задач.Gets the default cancellation token for this task factory.

ContinuationOptions

Получает параметры непрерывности задач по умолчанию для этой фабрики задач.Gets the default task continuation options for this task factory.

CreationOptions

Возвращает параметры создания задач по умолчанию для этой фабрики задач.Gets the default task creation options for this task factory.

Scheduler

Получает планировщик задач по умолчанию для этой фабрики задач.Gets the default task scheduler for this task factory.

Методы

ContinueWhenAll(Task[], Action<Task[]>)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll(Task[], Action<Task[]>, CancellationToken)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll(Task[], Action<Task[]>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll(Task[], Action<Task[]>, TaskContinuationOptions)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, CancellationToken)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, TaskContinuationOptions)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, CancellationToken)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, TaskContinuationOptions)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, CancellationToken)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, TaskContinuationOptions)

Создает задачу продолжения, которая запускается при завершении набора заданных задач.Creates a continuation task that starts when a set of specified tasks has completed.

ContinueWhenAny(Task[], Action<Task>)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny(Task[], Action<Task>, CancellationToken)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny(Task[], Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny(Task[], Action<Task>, TaskContinuationOptions)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, TaskContinuationOptions)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, CancellationToken)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, TaskContinuationOptions)

Создает продолжение задачи Task, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TResult>(Task[], Func<Task,TResult>)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, CancellationToken)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, TaskContinuationOptions)

Создает продолжение задачи Task<TResult>, которое будет запущено после завершения выполнения любой задачи в указанном наборе.Creates a continuation Task<TResult> that will be started upon the completion of any Task in the provided set.

Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
FromAsync(Func<AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, Object)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync(Func<AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, Object, TaskCreationOptions)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync(IAsyncResult, Action<IAsyncResult>)

Создает объект Task, который выполняет действие метода End по завершении заданного объекта IAsyncResult.Creates a Task that executes an end method action when a specified IAsyncResult completes.

FromAsync(IAsyncResult, Action<IAsyncResult>, TaskCreationOptions)

Создает объект Task, который выполняет действие метода End по завершении заданного объекта IAsyncResult.Creates a Task that executes an end method action when a specified IAsyncResult completes.

FromAsync(IAsyncResult, Action<IAsyncResult>, TaskCreationOptions, TaskScheduler)

Создает объект Task, который выполняет действие метода End по завершении заданного объекта IAsyncResult.Creates a Task that executes an end method action when a specified IAsyncResult completes.

FromAsync<TArg1,TArg2,TArg3,TResult>(Func<TArg1,TArg2,TArg3,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, TArg3, Object)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2,TArg3,TResult>(Func<TArg1,TArg2,TArg3,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, TArg3, Object, TaskCreationOptions)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2,TArg3>(Func<TArg1,TArg2,TArg3,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, TArg3, Object)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2,TArg3>(Func<TArg1,TArg2,TArg3,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, TArg3, Object, TaskCreationOptions)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2,TResult>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, Object)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2,TResult>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, Object, TaskCreationOptions)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, Object)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TArg2>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, Object, TaskCreationOptions)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TResult>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, Object)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1,TResult>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, Object, TaskCreationOptions)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, Object)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TArg1>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, Object, TaskCreationOptions)

Создает объект Task, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TResult>(Func<AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, Object)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TResult>(Func<AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, Object, TaskCreationOptions)

Создает объект Task<TResult>, который представляет пару методов begin и end, соответствующую шаблону модели асинхронного программирования.Creates a Task<TResult> that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>)

Создает объект Task<TResult>, который выполняет функцию метода End по завершении заданного объекта IAsyncResult.Creates a Task<TResult> that executes an end method function when a specified IAsyncResult completes.

FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>, TaskCreationOptions)

Создает объект Task<TResult>, который выполняет функцию метода End по завершении заданного объекта IAsyncResult.Creates a Task<TResult> that executes an end method function when a specified IAsyncResult completes.

FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>, TaskCreationOptions, TaskScheduler)

Создает объект Task<TResult>, который выполняет функцию метода End по завершении заданного объекта IAsyncResult.Creates a Task<TResult> that executes an end method function when a specified IAsyncResult completes.

GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
StartNew(Action)

Создает и запускает задачу.Creates and starts a task.

StartNew(Action, CancellationToken)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action, CancellationToken, TaskCreationOptions, TaskScheduler)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action, TaskCreationOptions)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action<Object>, Object)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action<Object>, Object, CancellationToken)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action<Object>, Object, CancellationToken, TaskCreationOptions, TaskScheduler)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew(Action<Object>, Object, TaskCreationOptions)

Создает и запускает задачу Task.Creates and starts a Task.

StartNew<TResult>(Func<Object,TResult>, Object)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<Object,TResult>, Object, CancellationToken)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<Object,TResult>, Object, CancellationToken, TaskCreationOptions, TaskScheduler)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<Object,TResult>, Object, TaskCreationOptions)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<TResult>)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<TResult>, CancellationToken)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<TResult>, CancellationToken, TaskCreationOptions, TaskScheduler)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

StartNew<TResult>(Func<TResult>, TaskCreationOptions)

Создает и запускает задачу Task<TResult>.Creates and starts a Task<TResult>.

ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Применяется к

Потокобезопасность

Все открытые и защищенные члены TaskFactory являются потокобезопасными и могут использоваться одновременно из нескольких потоков.All public and protected members of TaskFactory are thread-safe and may be used concurrently from multiple threads.

Дополнительно