다음을 통해 공유


Task.WhenAny 메서드

정의

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

오버로드

WhenAny(Task, Task)

제공된 작업 중 하나가 완료되면 완료되는 작업을 만듭니다.

WhenAny(Task[])

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

WhenAny(ReadOnlySpan<Task>)

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

WhenAny(IEnumerable<Task>)

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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

제공된 작업 중 하나가 완료되면 완료되는 작업을 만듭니다.

WhenAny(Task, Task)

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

제공된 작업 중 하나가 완료되면 완료되는 작업을 만듭니다.

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 상태로 항상 종료됩니다. 완료할 첫 번째 작업이 Canceled 또는 Faulted 상태로 종료되더라도 결과 값은 true.

적용 대상

WhenAny(Task[])

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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이었습니다.

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

설명

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

적용 대상

WhenAny(ReadOnlySpan<Task>)

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

public:
 static System::Threading::Tasks::Task<System::Threading::Tasks::Task ^> ^ WhenAny(ReadOnlySpan<System::Threading::Tasks::Task ^> tasks);
public static System.Threading.Tasks.Task<System.Threading.Tasks.Task> WhenAny (scoped ReadOnlySpan<System.Threading.Tasks.Task> tasks);
static member WhenAny : ReadOnlySpan<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task<System.Threading.Tasks.Task>
Public Shared Function WhenAny (tasks As ReadOnlySpan(Of Task)) As Task(Of Task)

매개 변수

tasks
ReadOnlySpan<Task>

완료될 때까지 대기할 작업입니다.

반환

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

예외

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

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 항상 RanToCompletion 상태로 종료되며, 결과는 완료할 첫 번째 작업으로 설정됩니다. 이 작업은 완료할 첫 번째 작업이 취소됨 또는 오류 상태로 종료된 경우에도 true.

적용 대상

WhenAny(IEnumerable<Task>)

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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.

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

설명

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

적용 대상

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

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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.

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

설명

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

적용 대상

WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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

형식 매개 변수

TResult

매개 변수

tasks
ReadOnlySpan<Task<TResult>>

완료될 때까지 대기할 작업입니다.

반환

Task<Task<TResult>>

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

예외

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

설명

제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 항상 RanToCompletion 상태로 종료되며, 결과는 완료할 첫 번째 작업으로 설정됩니다. 이 작업은 완료할 첫 번째 작업이 취소됨 또는 오류 상태로 종료된 경우에도 true.

적용 대상

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

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

제공된 작업이 완료되면 완료되는 작업을 만듭니다.

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이었습니다.

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

설명

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

적용 대상

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

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

제공된 작업 중 하나가 완료되면 완료되는 작업을 만듭니다.

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 상태로 항상 종료됩니다. 완료할 첫 번째 작업이 Canceled 또는 Faulted 상태로 종료되더라도 결과 값은 true.

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

적용 대상