2013-02-15 22 views

回答

3

.NET 4版本ContinueWith不提供此選項。

但是,您可以使用閉包或將數據包裝到Task<T>本身,具體取決於如何生成這些數據,以便訪問在先行任務中創建的狀態數據。

1

任務的AsyncState成員應該是您提供原始任務狀態的值,即使在ContinueWith中引用爲先行任務時也是如此。這對.Net 4.0有效。

Task.Factory 
    .StartNew(state => ..., myState) 
    .ContinueWith(task => task.AsyncState == myState);