이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

TaskFactory.ContinueWhenAll 메서드 (Task[], Action<Task[]>)

2013-12-13

제공된 작업 집합이 완료될 때 시작할 연속 Task를 만듭니다.

Namespace:  System.Threading.Tasks
어셈블리:  mscorlib(mscorlib.dll)

public Task ContinueWhenAll(
	Task[] tasks,
	Action<Task[]> continuationAction
)

매개 변수

tasks
형식: System.Threading.Tasks.Task []
계속할 작업의 배열입니다.
continuationAction
형식: System.Action< Task []>
tasks 배열의 모든 작업이 완료되었을 때 실행할 동작 대리자입니다.

반환 값

형식: System.Threading.Tasks.Task
새 연속 Task입니다.

예외조건
ObjectDisposedException

tasks 배열의 요소 중 하나가 삭제된 경우 발생하는 예외

ArgumentNullException

tasks 배열이 null인 경우 발생하는 예외

-또는-

continuationAction 인수가 null인 경우 발생하는 예외

ArgumentException

tasks 배열에 Null 값이 있는 경우 발생하는 예외

-또는-

tasks 배열이 비어 있는 경우 발생하는 예외

이 예제에서는 ContinueWhenAll()을 사용하여 이전에 시작된 작업 집합의 몇 가지 연속 작업이 완료된 것을 보여 줍니다.

// C#

// Create and start some tasks

var taskQueue = new Queue<Task>();

for (int i = 0; i < 10; i++)

{

taskQueue.Enqueue(Task.Factory.StartNew(() =>

{

// Do work.

}));

}

// Perform some work with the tasks when they complete.

Task.Factory.ContinueWhenAll(taskQueue.ToArray(), completedTasks =>

{

// Do continuation work.

});

' Visual Basic

' Create and start some tasks

Dim taskQueue As New Queue(Of Task)()

For i As Integer = 0 To 9

taskQueue.Add(Task.Factory.StartNew(Sub()

' Do work.

End Sub))

Next

' Perform some work with the tasks when they complete.

Task.Factory.ContinueWhenAll(taskQueue.ToArray(), Sub(completedTasks)

' Do continuation work.

End Sub)

Windows Phone OS

지원되는 버전: 8.0

표시:
© 2015 Microsoft