本地任務引用在超出作用域並且垃圾收集器決定在任務完成之前擺脫它時會發生什麼?處置任務會發生什麼情況?
基本上我問,如果它是安全的,使這種服務調用實現的:
/// <summary>
/// Web service operation to start a large batch asynchronously
/// </summary>
public StartBatchResponseMessage StartBatch(StartBatchRequestMessage request)
{
Task t = Task.Factory.StartNew(DoWork);
return new StartBatchResponseMessage();
}
private void DoWork()
{
// Implement solving world hunger here.
}
DoWork的意志總是在這個例子中完成?即使垃圾收集器決定處置Task實例變量t?
如果不是,那麼實現這種功能的更安全的方法是什麼?
要小心你如何使用「處置」這個詞。不要與`IDisposable`模式混淆。 – Gusdor 2014-01-25 11:40:44