Task.WhenAny Méthode

Définition

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

Surcharges

WhenAny(IEnumerable<Task>)

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

WhenAny(Task[])

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

WhenAny(Task, Task)

Crée une tâche qui se terminera lorsque l’une des tâches fournies est terminée.

WhenAny<TResult>(IEnumerable<Task<TResult>>)

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

WhenAny<TResult>(Task<TResult>[])

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

WhenAny<TResult>(Task<TResult>, Task<TResult>)

Crée une tâche qui se terminera lorsque l’une des tâches fournies est terminée.

WhenAny(IEnumerable<Task>)

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(System::Collections::Generic::IEnumerable<System::Threading::Tasks::Task ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (System.Collections.Generic.IEnumerable<System.Threading.Tasks.Task> tasks);
static member WhenAny : seq<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (tasks As IEnumerable(Of Task)) As Task(Of Task)

Paramètres

tasks
IEnumerable<Task>

Tâches restantes à exécuter avant la fin.

Retours

Tâche qui représente l'achèvement de l'une des tâches fournies. Le résultat de la tâche retour est la tâche qui s'est terminée.

Exceptions

L’argument tasks avait la valeur null.

La matrice tasks contenait une tâche null ou était vide.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec son résultat défini sur la première tâche à terminer. Cela est vrai même si la première tâche à effectuer s’est terminée dans l’état Canceled ou Faulted .

S’applique à

WhenAny(Task[])

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(... cli::array <System::Threading::Tasks::Task ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (params System.Threading.Tasks.Task[] tasks);
static member WhenAny : System.Threading.Tasks.Task[] -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (ParamArray tasks As Task()) As Task(Of Task)

Paramètres

tasks
Task[]

Tâches restantes à exécuter avant la fin.

Retours

Tâche qui représente l'achèvement de l'une des tâches fournies. Le résultat de la tâche retour est la tâche qui s'est terminée.

Exceptions

L'argument tasks avait la valeur null.

La matrice tasks contenait une tâche null ou était vide.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec sa Result valeur définie sur la première tâche à terminer. Cela est vrai même si la première tâche à effectuer s’est terminée dans l’état Canceled ou Faulted .

S’applique à

WhenAny(Task, Task)

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui se terminera lorsque l’une des tâches fournies est terminée.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(System::Threading::Tasks::Task ^ task1, System::Threading::Tasks::Task ^ task2);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (System.Threading.Tasks.Task task1, System.Threading.Tasks.Task task2);
static member WhenAny : System.Threading.Tasks.Task * System.Threading.Tasks.Task -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (task1 As Task, task2 As Task) As Task(Of Task)

Paramètres

task1
Task

Première tâche dont il faut attendre l’achèvement.

task2
Task

Deuxième tâche dont il faut attendre l’achèvement.

Retours

Nouvelle tâche qui représente l’achèvement de l’une des tâches fournies. Son Result est la tâche qui s’est terminée en premier.

Exceptions

task1 ou task2 était null.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec sa Result valeur définie sur la première tâche à terminer. La valeur du résultat est même si la première tâche à terminer s’est true terminée dans l’état Canceled ou Faulted .

S’applique à

WhenAny<TResult>(IEnumerable<Task<TResult>>)

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(System::Collections::Generic::IEnumerable<System::Threading::Tasks::Task<TResult> ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (System.Collections.Generic.IEnumerable<System.Threading.Tasks.Task<TResult>> tasks);
static member WhenAny : seq<System.Threading.Tasks.Task<'Result>> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (tasks As IEnumerable(Of Task(Of TResult))) As Task(Of Task(Of TResult))

Paramètres de type

TResult

Type de la tâche terminée.

Paramètres

tasks
IEnumerable<Task<TResult>>

Tâches restantes à exécuter avant la fin.

Retours

Task<Task<TResult>>

Tâche qui représente l'achèvement de l'une des tâches fournies. Le résultat de la tâche retour est la tâche qui s'est terminée.

Exceptions

L’argument tasks avait la valeur null.

La matrice tasks contenait une tâche null ou était vide.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec sa Result valeur définie sur la première tâche à terminer. Cela est vrai même si la première tâche à effectuer s’est terminée dans l’état Canceled ou Faulted .

S’applique à

WhenAny<TResult>(Task<TResult>[])

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui s'achève lorsque l'une des tâches fournies est terminée.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(... cli::array <System::Threading::Tasks::Task<TResult> ^> ^ tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (params System.Threading.Tasks.Task<TResult>[] tasks);
static member WhenAny : System.Threading.Tasks.Task<'Result>[] -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (ParamArray tasks As Task(Of TResult)()) As Task(Of Task(Of TResult))

Paramètres de type

TResult

Type de la tâche terminée.

Paramètres

tasks
Task<TResult>[]

Tâches restantes à exécuter avant la fin.

Retours

Task<Task<TResult>>

Tâche qui représente l'achèvement de l'une des tâches fournies. Le résultat de la tâche retour est la tâche qui s'est terminée.

Exceptions

L'argument tasks avait la valeur null.

La matrice tasks contenait une tâche null ou était vide.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec sa Result valeur définie sur la première tâche à terminer. Cela est vrai même si la première tâche à effectuer s’est terminée dans l’état Canceled ou Faulted .

S’applique à

WhenAny<TResult>(Task<TResult>, Task<TResult>)

Source:
Task.cs
Source:
Task.cs
Source:
Task.cs

Crée une tâche qui se terminera lorsque l’une des tâches fournies est terminée.

public:
generic <typename TResult>
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task<TResult> ^> ^ WhenAny(System::Threading::Tasks::Task<TResult> ^ task1, System::Threading::Tasks::Task<TResult> ^ task2);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task<TResult>> WhenAny<TResult> (System.Threading.Tasks.Task<TResult> task1, System.Threading.Tasks.Task<TResult> task2);
static member WhenAny : System.Threading.Tasks.Task<'Result> * System.Threading.Tasks.Task<'Result> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task<'Result>>
Public Shared Function WhenAny(Of TResult) (task1 As Task(Of TResult), task2 As Task(Of TResult)) As Task(Of Task(Of TResult))

Paramètres de type

TResult

Type du résultat de la tâche retournée.

Paramètres

task1
Task<TResult>

Première tâche dont il faut attendre l’achèvement.

task2
Task<TResult>

Deuxième tâche dont il faut attendre l’achèvement.

Retours

Task<Task<TResult>>

Tâche qui représente l’achèvement de l’une des tâches fournies. Le TResult de la tâche retournée est la tâche qui a été effectuée en premier.

Exceptions

task1 ou task2 était null.

Remarques

La tâche retournée se termine lorsque l’une des tâches fournies est terminée. La tâche retournée se termine toujours dans l’état RanToCompletion avec sa Result valeur définie sur la première tâche à terminer. La valeur du résultat est même si la première tâche à terminer s’est true terminée dans l’état Canceled ou Faulted .

Conseil

Dans chaque version surchargée de Task.WhenAny() lorsque cette méthode retourne la première tâche terminée, les autres tâches continuent de s’exécuter jusqu’à l’achèvement, même l’une d’elles terminée dans l’état Canceled ou Faulted . Par conséquent, si ce comportement n’est pas souhaité, vous pouvez annuler toutes les tâches restantes une fois la première tâche terminée.

S’applique à