Task.WhenAny 메서드

정의

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

오버로드

WhenAny(IEnumerable<Task>)

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

WhenAny(Task[])

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

WhenAny(Task, Task)

제공된 작업 중 하나가 완료했을 때 완료할 작업을 만듭니다.

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

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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

제공된 작업 중 하나가 완료했을 때 완료할 작업을 만듭니다.

WhenAny(IEnumerable<Task>)

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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)

매개 변수

tasks
IEnumerable<Task>

완료를 기다리는 작업입니다.

반환

제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.

예외

tasks 인수가 null인 경우

null 작업이 포함되었거나 비어 있는 tasks 배열입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 항상 완료할 첫 번째 작업으로 결과 집합이 있는 상태로 끝납니 RanToCompletion 다. 완료할 첫 번째 작업이 또는 Faulted 상태로 끝난 Canceled 경우에도 마찬가지입니다.

적용 대상

WhenAny(Task[])

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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)

매개 변수

tasks
Task[]

완료를 기다리는 작업입니다.

반환

제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.

예외

tasks 인수가 null인 경우

null 작업이 포함되었거나 비어 있는 tasks 배열입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result 설정된 상태로 항상 종료 RanToCompletion 됩니다. 완료할 첫 번째 작업이 또는 Faulted 상태로 끝난 Canceled 경우에도 마찬가지입니다.

적용 대상

WhenAny(Task, Task)

제공된 작업 중 하나가 완료했을 때 완료할 작업을 만듭니다.

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)

매개 변수

task1
Task

완료를 기다리는 첫 번째 작업입니다.

task2
Task

완료를 기다리는 두 번째 작업입니다.

반환

제공된 작업 중 하나의 완료를 나타내는 새 작업입니다. 해당 Result는 먼저 완료된 작업입니다.

예외

task1 또는 task2null입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result 설정된 상태로 항상 종료 RanToCompletion 됩니다. 결과 값은 true 완료할 첫 번째 작업이 또는 Faulted 상태로 종료 Canceled 된 경우에도 입니다.

적용 대상

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

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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

형식 매개 변수

TResult

완료된 작업의 형식입니다.

매개 변수

tasks
IEnumerable<Task<TResult>>

완료를 기다리는 작업입니다.

반환

Task<Task<TResult>>

제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.

예외

tasks 인수가 null인 경우

null 작업이 포함되었거나 비어 있는 tasks 배열입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result 설정된 상태로 항상 종료 RanToCompletion 됩니다. 완료할 첫 번째 작업이 또는 Faulted 상태로 끝난 Canceled 경우에도 마찬가지입니다.

적용 대상

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

제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.

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

형식 매개 변수

TResult

완료된 작업의 형식입니다.

매개 변수

tasks
Task<TResult>[]

완료를 기다리는 작업입니다.

반환

Task<Task<TResult>>

제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.

예외

tasks 인수가 null인 경우

null 작업이 포함되었거나 비어 있는 tasks 배열입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result 설정된 상태로 항상 종료 RanToCompletion 됩니다. 완료할 첫 번째 작업이 또는 Faulted 상태로 끝난 Canceled 경우에도 마찬가지입니다.

적용 대상

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

제공된 작업 중 하나가 완료했을 때 완료할 작업을 만듭니다.

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

형식 매개 변수

TResult

반환된 작업의 결과 형식입니다.

매개 변수

task1
Task<TResult>

완료를 기다리는 첫 번째 작업입니다.

task2
Task<TResult>

완료를 기다리는 두 번째 작업입니다.

반환

Task<Task<TResult>>

제공된 한 작업의 완료를 나타내는 작업입니다. 반환된 작업의 TResult는 먼저 완료된 작업입니다.

예외

task1 또는 task2null입니다.

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result 설정된 상태로 항상 종료 RanToCompletion 됩니다. 결과 값은 true 완료할 첫 번째 작업이 또는 Faulted 상태로 종료 Canceled 된 경우에도 입니다.

모든 오버로드된 Task.WhenAny() 버전에서 이 메서드가 첫 번째 완료된 작업을 반환할 때 다른 작업은 완료될 때까지 계속 실행되며, 그 중 어느 것도 또는 Faulted 상태에서 완료됩니다Canceled. 따라서 해당 동작을 원하지 않는 경우 첫 번째 작업이 완료되면 나머지 작업을 모두 취소할 수 있습니다.

적용 대상