我有開始一個任務並返回最後cahined任務得到結果這個方法:如何啓動延續任務實例?
public Task<double> GetTask()
{
return Task.Factory.StartNew((() => 10))
.ContinueWith(i =>
{
return i.Result + 2;
})
.ContinueWith(i =>
{
return (double)i.Result;
});
}
我想有同樣的方法返回相同的任務,但不與Task.Factory自動啓動它.StartNew這樣的:
public Task<double> GetTask2()
{
return new Task<int>((() => 10))
.ContinueWith(i =>
{
return i.Result + 2;
})
.ContinueWith(i =>
{
return (double)i.Result;
});
}
反正我沒能找到一種方法來啓動由GetTask2返回的任務,並得到結果。我如何啓動並獲得結果?
這是行不通的。你需要開始原始的第一項任務。不是鏈的最後一個。 – usr 2012-03-14 16:22:08
爲什麼?這不是問題。只是從該方法實例化任務。然後啓動它。簡單。 – MoonKnight 2012-03-14 16:24:58
您正在調用開始繼續任務。您無法啓動延續任務。它的前奏完成時它會自動啓動。你不能強迫它開始。 – usr 2012-03-14 17:09:34