我一直在尋找一個解決方案,現在看來似乎必須是一個簡單的問題。然而,我發現每一個例子創建的Task
同樣的情形這一個(從How to: Extend the Async Walkthrough by Using Task.WhenAll (C# and Visual Basic)頁面上MSDN拍攝)集合:等待幾種不同異步操作的結果使用Task.WhenAny
IEnumerable<Task<int>> downloadTasksQuery =
from url in urlList select ProcessURLAsync(url);
我不能這樣做,因爲我想調用不同async
方法和await
結果......更多的東西像這樣的(但不是這一點,因爲這似乎並沒有做任何事情):
var getTicketTasks = new List<Task<IEnumerable<ITicket>>>();
getTicketTasks.Add(new Task(() => Model.GetTicketsAsync(eventDate)));
getTicketTasks.Add(new Task(() => Model.GetGuestTicketsAsync(eventDate)));
...
getTicketTasks.Add(new Task(() => Model.GetOtherTicketsAsync(eventDate)));
IEnumerable<ITicket>[] tickets = await Task.WhenAll(getTicketTasks);
所以,我怎麼能叫一些async
方法和await
使用Task.WhenAll
方法的結果?
什麼是'GetTicketsAsync','GetGuestTicketsAsync'的返回類型..? – 2014-10-07 14:12:16
'任務>' –
Sheridan
2014-10-07 14:12:38