2013-03-27 29 views
1

我曾嘗試使用下面的代碼回調任務

For (//pls ignore the variables) 
      Dim task = (New System.Threading.Tasks.TaskFactory()).StartNew(
      Sub() 
       downloadFiles() 
      End Sub 
      ) 

Next 

創建任務的n次創造了一個任務,它異步工作正常。現在我不知道如何爲此添加回調方法。任何人都可以請告訴我如何爲此添加回調?

回答

2

回調的使用應該是這樣的: 我離開了對...每個。

Private Sub StartTask_Click(sender As Object, e As RoutedEventArgs) Handles StartTask.Click 
    Dim LongTask As Task = (New System.Threading.Tasks.TaskFactory).StartNew(AddressOf DoWorkAsync) 
    LongTask.ContinueWith(AddressOf WorkCompleted) 
    Debug.Print("") 
    End Sub 

    ''' <summary> 
    ''' Called after DoWorkAsync Task is complete 
    ''' </summary> 
    ''' <remarks></remarks> 
    Private Sub WorkCompleted() 
    Debug.Print("completed") 
    End Sub 

    ''' <summary> 
    ''' Called by Task 
    ''' </summary> 
    ''' <remarks></remarks> 
    Public Sub DoWorkAsync() 
    For i = 0 To 2000 
     Debug.Print("test") 
    Next 
    End Sub