我正在閱讀一本名爲C#的Pro .NET 4並行編程的書,由Adam Freeman編寫。在第2章第13頁中,它討論了使用Task<int>
通過使用task1.Result
來返回結果以等待它結束。我不明白爲什麼task2
必須等待task1
才能完成。他們在不同的線程。C#.net 4並行編程
這件事情,象下面這樣:
Task<int> task1 = new Task<int>(() => { ... ; return sum });
task1.Start();
Console.WriteLine("Result 1: {0}", task1.Result);
Task<int> task2 = new Task<int>(() => { ... ; return sum });
task2.Start();
Console.WriteLine("Result 2: {0}", task2.Result);
如果我移動到下面的行好像task1
底部依然執行先不管多少次,我試過。
Console.WriteLine("Result 1: {0}", task1.Result);
這是怎麼發生的?
感謝您的回答 – Fei 2012-01-02 15:03:22