TaskFactory.ContinueWhenAny Methode

Definition

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

Überlädt

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

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

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>)

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<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,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>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Erstellt eine Fortsetzungs-Task<TResult>, 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<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>>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Erstellt eine Fortsetzungs-Task, 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.

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>, CancellationToken, TaskContinuationOptions, TaskScheduler)

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Action<System::Threading::Tasks::Task ^> ^ continuationAction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task ContinueWhenAny(System.Threading.Tasks.Task[] tasks, Action<System.Threading.Tasks.Task> continuationAction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Action<System.Threading.Tasks.Task> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task
Public Function ContinueWhenAny (tasks As Task(), continuationAction As Action(Of Task), continuationOptions As TaskContinuationOptions) As Task

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Tasksteuert.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationAction ist null.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Action<System::Threading::Tasks::Task ^> ^ continuationAction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task ContinueWhenAny(System.Threading.Tasks.Task[] tasks, Action<System.Threading.Tasks.Task> continuationAction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Action<System.Threading.Tasks.Task> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task
Public Function ContinueWhenAny (tasks As Task(), continuationAction As Action(Of Task), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Tasksteuert.

scheduler
TaskScheduler

Das TaskScheduler wird verwendet, um die erstellte Fortsetzung Taskzu planen.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Das tasks Array ist null.

-oder-

continuationAction ist null.

-oder-

scheduler ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

ContinueWhenAny(Task[], Action<Task>)

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Action<System::Threading::Tasks::Task ^> ^ continuationAction);
public System.Threading.Tasks.Task ContinueWhenAny(System.Threading.Tasks.Task[] tasks, Action<System.Threading.Tasks.Task> continuationAction);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Action<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task
Public Function ContinueWhenAny (tasks As Task(), continuationAction As Action(Of Task)) As Task

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

Das continuationAction Argument ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Beispiele

Das folgende Beispiel zeigt die Verwendung ContinueWhenAny und ContinueWhenAll:

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

class ContinueWhenMultiDemo
{
    // Demonstrated features:
    // 		Task.Factory
    //		TaskFactory.ContinueWhenAll()
    //		TaskFactory.ContinueWhenAny()
    //		Task.Wait()
    // Expected results:
    // 		Three tasks are created in parallel. 
    //		Each task for a different period of time prints a number and returns it.
    //      A ContinueWhenAny() task indicates the first of the three tasks to complete.
    //      A ContinueWhenAll() task sums up the results of the three tasks and prints out the total.
    // Documentation:
    //		http://msdn.microsoft.com/library/system.threading.tasks.taskfactory_members(VS.100).aspx
    static void Main()
    {
        // Schedule a list of tasks that return integer
        Task<int>[] tasks = new Task<int>[]
            {
                Task<int>.Factory.StartNew(() => 
                    {
                        Thread.Sleep(500);
                        Console.WriteLine("Task={0}, Thread={1}, x=5", Task.CurrentId, Thread.CurrentThread.ManagedThreadId);
                        return 5;
                    }),

                Task<int>.Factory.StartNew(() => 
                    {
                        Thread.Sleep(10);
                        Console.WriteLine("Task={0}, Thread={1}, x=3", Task.CurrentId, Thread.CurrentThread.ManagedThreadId);
                        return 3;
                    }),

                Task<int>.Factory.StartNew(() => 
                    {
                        Thread.Sleep(200);
                        Console.WriteLine("Task={0}, Thread={1}, x=2", Task.CurrentId, Thread.CurrentThread.ManagedThreadId);
                        return 2;
                    })
            };

        // Schedule a continuation to indicate the result of the first task to complete
        Task.Factory.ContinueWhenAny(tasks, winner =>
        {
            // You would expect winning result = 3 on multi-core systems, because you expect
            // tasks[1] to finish first.
            Console.WriteLine("Task={0}, Thread={1} (ContinueWhenAny): Winning result = {2}", Task.CurrentId, Thread.CurrentThread.ManagedThreadId, winner.Result);
        });

        // Schedule a continuation that sums up the results of all tasks, then wait on it.
        // The list of antecendent tasks is passed as an argument by the runtime.
        Task.Factory.ContinueWhenAll(tasks,
            (antecendents) =>
            {
                int sum = 0;
                foreach (Task<int> task in antecendents)
                {
                    sum += task.Result;
                }

                Console.WriteLine("Task={0}, Thread={1}, (ContinueWhenAll): Total={2} (expected 10)", Task.CurrentId, Thread.CurrentThread.ManagedThreadId, sum);
            })
            .Wait();
    }
}
Imports System.Threading
Imports System.Threading.Tasks

Module ContinuationWhenMulti
    ' Demonstrated features:
    '   Task.Factory
    '   TaskFactory.ContinueWhenAll()
    '   TaskFactory.ContinueWhenAny()
    '   Task.Wait()
    ' Expected results:
    '   Three tasks are created in parallel. 
    '   Each task for a different period of time prints a number and returns it.
    '   A ContinueWhenAny() task indicates the first of the three tasks to complete.
    '   A ContinueWhenAll() task sums up the results of the three tasks and prints out the total.
    ' Documentation:
    '   http://msdn.microsoft.com/library/system.threading.tasks.taskfactory_members(VS.100).aspx
    Sub Main()
        ' Schedule a list of tasks that return integer
        Dim tasks As Task(Of Integer)() = New Task(Of Integer)() {
            Task(Of Integer).Factory.StartNew(Function()
                                                  Thread.Sleep(500)
                                                  Console.WriteLine("Task={0}, Thread={1}, x=5", Task.CurrentId, Thread.CurrentThread.ManagedThreadId)
                                                  Return 5
                                              End Function),
            Task(Of Integer).Factory.StartNew(Function()
                                                  Thread.Sleep(10)
                                                  Console.WriteLine("Task={0}, Thread={1}, x=3", Task.CurrentId, Thread.CurrentThread.ManagedThreadId)
                                                  Return 3
                                              End Function),
            Task(Of Integer).Factory.StartNew(Function()
                                                  Thread.Sleep(200)
                                                  Console.WriteLine("Task={0}, Thread={1}, x=2", Task.CurrentId, Thread.CurrentThread.ManagedThreadId)
                                                  Return 2
                                              End Function)}


        ' Schedule a continuation to indicate the result of the first task to complete
        Task.Factory.ContinueWhenAny(tasks, Sub(winner)
                                                ' You would expect winning result = 3 on multi-core systems, because you expect
                                                ' tasks[1] to finish first.
                                                Console.WriteLine("Task={0}, Thread={1} (ContinueWhenAny): Winning result = {2}", Task.CurrentId, Thread.CurrentThread.ManagedThreadId, winner.Result)
                                            End Sub)


        ' Schedule a continuation that sums up the results of all tasks, then wait on it.
        ' The list of antecendent tasks is passed as an argument by the runtime.
        Task.Factory.ContinueWhenAll(tasks, Sub(antecendents)
                                                Dim sum As Integer = 0
                                                For Each task__1 As Task(Of Integer) In antecendents
                                                    sum += task__1.Result
                                                Next
                                                Console.WriteLine("Task={0}, Thread={1}, (ContinueWhenAll): Total={2} (expected 10)", Task.CurrentId, Thread.CurrentThread.ManagedThreadId, sum)
                                            End Sub).Wait()
    End Sub
End Module

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Action<System::Threading::Tasks::Task ^> ^ continuationAction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task ContinueWhenAny(System.Threading.Tasks.Task[] tasks, Action<System.Threading.Tasks.Task> continuationAction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Action<System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function ContinueWhenAny (tasks As Task(), continuationAction As Action(Of Task), cancellationToken As CancellationToken) As Task

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

-oder-

cancellationToken wurde bereits verworfen.

Das tasks Array ist null.

-oder-

Das continuationAction Argument ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult, typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult,TResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), continuationOptions As TaskContinuationOptions) As Task(Of TResult)

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task<TAntecedentResult>,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Task<TResult>steuert.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult, typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult,TResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult)) As Task(Of TResult)

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task<TAntecedentResult>,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult, typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult,TResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), cancellationToken As CancellationToken) As Task(Of TResult)

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task<TAntecedentResult>,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

-oder-

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult, typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult,TResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult, TResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task(Of TResult)

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task<TAntecedentResult>,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Task<TResult>steuert.

scheduler
TaskScheduler

Das TaskScheduler wird verwendet, um die erstellte Fortsetzung Task<TResult>zu planen.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Das tasks Array ist null.

-oder-

continuationFunction ist null.

-oder-

scheduler ist null.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult>
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Action<System::Threading::Tasks::Task<TAntecedentResult> ^> ^ continuationAction);
public System.Threading.Tasks.Task ContinueWhenAny<TAntecedentResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Action<System.Threading.Tasks.Task<TAntecedentResult>> continuationAction);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Action<System.Threading.Tasks.Task<'AntecedentResult>> -> System.Threading.Tasks.Task
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationAction As Action(Of Task(Of TAntecedentResult))) As Task

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task<TAntecedentResult>>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationAction ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult>
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Action<System::Threading::Tasks::Task<TAntecedentResult> ^> ^ continuationAction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task ContinueWhenAny<TAntecedentResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Action<System.Threading.Tasks.Task<TAntecedentResult>> continuationAction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Action<System.Threading.Tasks.Task<'AntecedentResult>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationAction As Action(Of Task(Of TAntecedentResult)), cancellationToken As CancellationToken) As Task

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task<TAntecedentResult>>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

-oder-

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Das tasks Array ist null.

-oder-

continuationAction ist null.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult>
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Action<System::Threading::Tasks::Task<TAntecedentResult> ^> ^ continuationAction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task ContinueWhenAny<TAntecedentResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Action<System.Threading.Tasks.Task<TAntecedentResult>> continuationAction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Action<System.Threading.Tasks.Task<'AntecedentResult>> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationAction As Action(Of Task(Of TAntecedentResult)), continuationOptions As TaskContinuationOptions) As Task

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task<TAntecedentResult>>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Tasksteuert.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationAction ist null.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TAntecedentResult>
 System::Threading::Tasks::Task ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Action<System::Threading::Tasks::Task<TAntecedentResult> ^> ^ continuationAction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task ContinueWhenAny<TAntecedentResult>(System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Action<System.Threading.Tasks.Task<TAntecedentResult>> continuationAction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Action<System.Threading.Tasks.Task<'AntecedentResult>> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationAction As Action(Of Task(Of TAntecedentResult)), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task

Typparameter

TAntecedentResult

Der Typ des Ergebnisses des vorerkennten tasks.

Parameter

tasks
Task<TAntecedentResult>[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationAction
Action<Task<TAntecedentResult>>

Der Aktionsdelegat, der tasks ausgeführt werden soll, wenn eine Aufgabe im Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Tasksteuert.

scheduler
TaskScheduler

Das TaskScheduler wird verwendet, um die erstellte Fortsetzung Task<TResult>zu planen.

Gibt zurück

Die neue Fortsetzung Task.

Ausnahmen

Das tasks Array ist null.

-oder-

continuationAction ist null.

-oder-

paramref name="scheduler" /> is null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

continuationOptions Gibt einen ungültigen TaskContinuationOptions Wert an.

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TResult>(System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TResult) (tasks As Task(), continuationFunction As Func(Of Task, TResult)) As Task(Of TResult)

Typparameter

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

Das tasks Array enthält einen NULL-Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TResult>(System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TResult) (tasks As Task(), continuationFunction As Func(Of Task, TResult), cancellationToken As CancellationToken) As Task(Of TResult)

Typparameter

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

-oder-

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TResult>(System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TResult) (tasks As Task(), continuationFunction As Func(Of Task, TResult), continuationOptions As TaskContinuationOptions) As Task(Of TResult)

Typparameter

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Task<TResult>steuert.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Eines der Elemente im tasks Array wurde gelöscht.

Das tasks Array ist null.

-oder-

continuationFunction ist null.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für:

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

Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs
Quelle:
TaskFactory.cs

Erstellt eine Fortsetzungs-Task<TResult>, die nach Abschluss einer aufgabe im angegebenen Satz gestartet wird.

public:
generic <typename TResult>
 System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TResult>(System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TResult) (tasks As Task(), continuationFunction As Func(Of Task, TResult), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task(Of TResult)

Typparameter

TResult

Der Typ des Ergebnisses, das von der continuationFunction Stellvertretung zurückgegeben und der erstellten zugeordnet Task<TResult>ist.

Parameter

tasks
Task[]

Das Array von Vorgängen, aus denen nach Abschluss einer Aufgabe fortgesetzt werden soll.

continuationFunction
Func<Task,TResult>

Der Funktionsdelegat, der asynchron ausgeführt werden soll, wenn eine Aufgabe im tasks Array abgeschlossen ist.

cancellationToken
CancellationToken

Das CancellationToken wird der neuen Fortsetzungsaufgabe zugewiesen.

continuationOptions
TaskContinuationOptions

Der TaskContinuationOptions Wert, der das Verhalten der erstellten Fortsetzung Task<TResult>steuert.

scheduler
TaskScheduler

Das TaskScheduler wird verwendet, um die erstellte Fortsetzung Task<TResult>zu planen.

Gibt zurück

Die neue Fortsetzung Task<TResult>.

Ausnahmen

Das tasks Array ist null.

-oder-

continuationFunction ist null.

-oder-

scheduler ist null.

Das tasks Array enthält einen null Wert.

-oder-

Das tasks Array ist leer.

continuationOptions Gibt einen ungültigen TaskContinuationOptions-Wert an.

Die bereitgestellte Datei CancellationToken wurde bereits verworfen.

Hinweise

Die NotOn* und OnlyOn* TaskContinuationOptions, die einschränken, für welche TaskStatus Staaten eine Fortsetzung ausgeführt wird, sind illegal mit ContinueWhenAny.

Weitere Informationen

Gilt für: