TaskFactory Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bietet Unterstützung für das Erstellen und Planen von Task Objekten.
public ref class TaskFactory
public class TaskFactory
type TaskFactory = class
Public Class TaskFactory
- Vererbung
-
TaskFactory
Beispiele
Im folgenden Beispiel wird die statische Factory-Eigenschaft verwendet, um zwei Aufrufe an die TaskFactory.StartNew-Methode auszuführen. Das erste füllt ein Array mit den Namen der Dateien im MyDocuments-Verzeichnis des Benutzers auf, während der zweite ein Array mit den Namen der Unterverzeichnisse des MyDocuments-Verzeichnisses des Benutzers auffüllt. Anschließend wird die TaskFactory.ContinueWhenAll(Task[], Action<Task[]>)-Methode aufgerufen, die Informationen über die Anzahl der Dateien und Verzeichnisse in den beiden Arrays anzeigt, nachdem die ersten beiden Aufgaben die Ausführung abgeschlossen haben.
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
Hinweise
.NET bietet zwei Fabriken zum Erstellen und Planen von Vorgängen:
Die TaskFactory Klasse, die Task- und Task<TResult>-Objekte erstellt. Sie können die Überladungen dieser Methode aufrufen, um eine Aufgabe zu erstellen und auszuführen, die keine Standardargumente erfordert.
Warnung
Ab .NET Framework 4.5 bietet die Task.Run Methode die einfachste Möglichkeit, eine Aufgabe mit Standardkonfigurationswerten zu erstellen und sofort zu starten.
Die TaskFactory<TResult> Klasse, die Task<TResult> Objekte erstellt.
Die TaskFactory Klasse ermöglicht Folgendes:
Erstellen Sie eine Aufgabe, und starten Sie sie sofort, indem Sie die StartNew-Methode aufrufen.
Warnung
Ab .NET Framework 4.5 bietet die Task.Run Methode die einfachste Möglichkeit, eine Aufgabe mit Standardkonfigurationswerten zu erstellen und sofort zu starten.
Erstellen Sie eine Aufgabe, die beginnt, wenn eine der Aufgaben in einem Array abgeschlossen wurde, indem Sie die ContinueWhenAny-Methode aufrufen.
Erstellen Sie eine Aufgabe, die beginnt, wenn alle Aufgaben in einem Array abgeschlossen wurden, indem Sie die ContinueWhenAll-Methode aufrufen.
Die statische Task<TResult>.Factory-Eigenschaft gibt ein Standardobjekt TaskFactory<TResult> zurück. Sie können auch einen der TaskFactory Klassenkonstruktoren aufrufen, um die von der TaskFactory Klasse erstellten Task Objekte zu konfigurieren. Im folgenden Beispiel wird ein neues TaskFactory-Objekt konfiguriert, um Aufgaben zu erstellen, die über ein bestimmtes Abbruchtoken, Aufgabenerstellungsoptionen, Fortsetzungsoptionen und einen angepassten Aufgabenplaner verfügen.
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
In den meisten Fällen müssen Sie keine neue TaskFactory Instanz instanziieren. Stattdessen können Sie die Task.Factory-Eigenschaft verwenden, die ein Factoryobjekt zurückgibt, das Standardwerte verwendet. Anschließend können Sie die zugehörigen Methoden aufrufen, um neue Aufgaben zu starten oder Aufgabenfortsetzungen zu definieren. Eine Abbildung finden Sie im Beispiel.
Konstruktoren
TaskFactory() |
Initialisiert eine TaskFactory Instanz mit der Standardkonfiguration. |
TaskFactory(CancellationToken, TaskCreationOptions, TaskContinuationOptions, TaskScheduler) |
Initialisiert eine TaskFactory Instanz mit der angegebenen Konfiguration. |
TaskFactory(CancellationToken) |
Initialisiert eine TaskFactory Instanz mit der angegebenen Konfiguration. |
TaskFactory(TaskCreationOptions, TaskContinuationOptions) |
Initialisiert eine TaskFactory Instanz mit der angegebenen Konfiguration. |
TaskFactory(TaskScheduler) |
Initialisiert eine TaskFactory Instanz mit der angegebenen Konfiguration. |
Eigenschaften
CancellationToken |
Ruft das Standardmäßige Abbruchtoken für diese Vorgangsfactory ab. |
ContinuationOptions |
Ruft die Standardoptionen für die Aufgabenfortsetzung für diese Vorgangsfactory ab. |
CreationOptions |
Ruft die Standardoptionen für die Aufgabenerstellung für diese Vorgangsfactory ab. |
Scheduler |
Ruft den Standardaufgabenplaner für diese Vorgangsfactory ab. |
Methoden
ContinueWhenAll(Task[], Action<Task[]>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll(Task[], Action<Task[]>, CancellationToken) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll(Task[], Action<Task[]>, TaskContinuationOptions) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll(Task[], Action<Task[]>) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, CancellationToken) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>, TaskContinuationOptions) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>[],TResult>) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, CancellationToken) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>, TaskContinuationOptions) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>[]>) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, CancellationToken) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>, TaskContinuationOptions) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAll<TResult>(Task[], Func<Task[],TResult>) |
Erstellt eine Fortsetzungsaufgabe, die beginnt, wenn eine Reihe von angegebenen Vorgängen abgeschlossen wurde. |
ContinueWhenAny(Task[], Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny(Task[], Action<Task>, CancellationToken) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny(Task[], Action<Task>, TaskContinuationOptions) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny(Task[], Action<Task>) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, TaskContinuationOptions) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult,TResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, CancellationToken) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>, TaskContinuationOptions) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Action<Task<TAntecedentResult>>) |
Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, CancellationToken) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TResult>(Task[], Func<Task,TResult>, TaskContinuationOptions) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
ContinueWhenAny<TResult>(Task[], Func<Task,TResult>) |
Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
FromAsync(Func<AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, Object, TaskCreationOptions) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync(Func<AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, Object) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync(IAsyncResult, Action<IAsyncResult>, TaskCreationOptions, TaskScheduler) |
Erstellt eine Task, die eine Endmethodenaktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
FromAsync(IAsyncResult, Action<IAsyncResult>, TaskCreationOptions) |
Erstellt eine Task, die eine Endmethodenaktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
FromAsync(IAsyncResult, Action<IAsyncResult>) |
Erstellt eine Task, die eine Endmethodenaktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
FromAsync<TArg1,TArg2,TArg3,TResult>(Func<TArg1,TArg2,TArg3,AsyncCallback, Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, TArg3, Object, TaskCreationOptions) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2,TArg3,TResult>(Func<TArg1,TArg2,TArg3,AsyncCallback, Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, TArg3, Object) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2,TArg3>(Func<TArg1,TArg2,TArg3,AsyncCallback, Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, TArg3, Object, TaskCreationOptions) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2,TArg3>(Func<TArg1,TArg2,TArg3,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, TArg3, Object) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2,TResult>(Func<TArg1,TArg2,AsyncCallback, Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, Object, TaskCreationOptions) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2,TResult>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, TArg2, Object) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, Object, TaskCreationOptions) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TArg2>(Func<TArg1,TArg2,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, TArg2, Object) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TResult>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, Object, TaskCreationOptions) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1,TResult>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, TArg1, Object) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, Object, TaskCreationOptions) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TArg1>(Func<TArg1,AsyncCallback,Object,IAsyncResult>, Action<IAsyncResult>, TArg1, Object) |
Erstellt eine Task, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TResult>(Func<AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, Object, TaskCreationOptions) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TResult>(Func<AsyncCallback,Object,IAsyncResult>, Func<IAsyncResult,TResult>, Object) |
Erstellt eine Task<TResult>, die ein Start- und Endmethodenpaar darstellt, das dem Muster des asynchronen Programmiermodells entspricht. |
FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>, TaskCreationOptions, TaskScheduler) |
Erstellt eine Task<TResult>, die eine Endmethodenfunktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>, TaskCreationOptions) |
Erstellt eine Task<TResult>, die eine Endmethodenfunktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
FromAsync<TResult>(IAsyncResult, Func<IAsyncResult,TResult>) |
Erstellt eine Task<TResult>, die eine Endmethodenfunktion ausführt, wenn ein angegebenes IAsyncResult abgeschlossen ist. |
GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
StartNew(Action, CancellationToken, TaskCreationOptions, TaskScheduler) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat, abbruchtoken, Erstellungsoptionen und Zustand. |
StartNew(Action, CancellationToken) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat und das Abbruchtoken. |
StartNew(Action, TaskCreationOptions) |
Erstellt und startet eine Aufgabe für die angegebenen Aktionsdelegat- und Erstellungsoptionen. |
StartNew(Action) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat. |
StartNew(Action<Object>, Object, CancellationToken, TaskCreationOptions, TaskScheduler) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat, Zustand, Abbruchtoken, Erstellungsoptionen und Aufgabenplanung. |
StartNew(Action<Object>, Object, CancellationToken) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat, Zustands- und Abbruchtoken. |
StartNew(Action<Object>, Object, TaskCreationOptions) |
Erstellt und startet eine Aufgabe für die angegebenen Aktionsdelegat-, Zustands- und Erstellungsoptionen. |
StartNew(Action<Object>, Object) |
Erstellt und startet eine Aufgabe für den angegebenen Aktionsdelegat und -zustand. |
StartNew<TResult>(Func<Object,TResult>, Object, CancellationToken, TaskCreationOptions, TaskScheduler) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<Object,TResult>, Object, CancellationToken) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<Object,TResult>, Object, TaskCreationOptions) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<Object,TResult>, Object) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<TResult>, CancellationToken, TaskCreationOptions, TaskScheduler) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<TResult>, CancellationToken) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<TResult>, TaskCreationOptions) |
Erstellt und startet eine Aufgabe vom Typ |
StartNew<TResult>(Func<TResult>) |
Erstellt und startet eine Aufgabe vom Typ |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Gilt für:
Threadsicherheit
Alle öffentlichen und geschützten Member von TaskFactory sind threadsicher und können gleichzeitig aus mehreren Threads verwendet werden.