Task.WhenAny 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다.
오버로드
WhenAny(IEnumerable<Task>) |
제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다. |
WhenAny(Task[]) |
제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다. |
WhenAny(Task, Task) |
제공된 작업 중 하나가 완료했을 때 완료할 작업을 만듭니다. |
WhenAny<TResult>(Task<TResult>[]) |
제공된 작업을 모두 완료했을 때 완료할 작업을 만듭니다. |
WhenAny<TResult>(IEnumerable<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
또는 task2
가 null
입니다.
설명
제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result
설정된 상태로 항상 종료 RanToCompletion
됩니다. 결과 값은 true
완료할 첫 번째 작업이 또는 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>[]
완료를 기다리는 작업입니다.
반환
제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.
예외
tasks
인수가 null인 경우
null 작업이 포함되었거나 비어 있는 tasks
배열입니다.
설명
제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result
설정된 상태로 항상 종료 RanToCompletion
됩니다. 완료할 첫 번째 작업이 또는 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>>
완료를 기다리는 작업입니다.
반환
제공된 한 작업의 완료를 나타내는 작업입니다. 반환 작업의 결과는 완료된 작업입니다.
예외
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>
완료를 기다리는 두 번째 작업입니다.
반환
제공된 한 작업의 완료를 나타내는 작업입니다. 반환된 작업의 TResult
는 먼저 완료된 작업입니다.
예외
task1
또는 task2
가 null
입니다.
설명
제공된 작업이 완료되면 반환된 작업이 완료됩니다. 반환된 작업은 완료할 첫 번째 작업으로 Result
설정된 상태로 항상 종료 RanToCompletion
됩니다. 결과 값은 true
완료할 첫 번째 작업이 또는 Faulted
상태로 끝난 Canceled
경우에도 입니다.
팁
Task.WhenAny()의 오버로드된 모든 버전에서 이 메서드가 첫 번째 완료된 작업을 반환할 때 다른 작업은 완료될 때까지 계속 실행되며, 그 중 어느 것도 또는 Faulted
상태에서 완료됩니다Canceled
. 따라서 해당 동작을 원하지 않는 경우 첫 번째 작업이 완료되면 나머지 작업을 모두 취소할 수 있습니다.