請讓我知道我是否可以同時運行多個Task.Factory.StartNew
聲明。如何從Task.Factory.StartNew <>得到結果?
一些這樣的事
var task = Task.Factory.StartNew<List<AccessDetails>>(() => this.GetAccessListOfMirror(mirrorId, null,"DEV"));
var task1 = Task.Factory.StartNew<List<AccessDetails>>(() => this.GetAccessListOfMirror(mirrorId, null, "PROD"));
如果是這樣的。如何獲取語句的輸出並使用它。
我已經使用過如下語句。應用程序將等待直到我從線程獲得輸出。
var task = Task.Factory.StartNew<List<AccessDetails>>(() => this.GetAccessListOfMirror(mirrorId, null,"DEV"));
return (List<AccessDetails>)task.ContinueWith(tsk => accdet = task.Result.ToList()).Result;
不知道如果我得到你的問題,但如果你想等到執行完成,你可以使用Task.Wait(),然後抓住Task.Result。 – Mecaveli 2013-05-02 07:53:55
@Mecaveli [Task.Result](http://msdn.microsoft.com/zh-cn/library/dd321468.aspx)阻塞直到完成,如果您正在處理,則不需要先調用Task.Wait()一項任務。 – 2013-05-02 08:04:06
Thx爲更正。他處理多任務 - 本來就是Task.WaitAll。 – Mecaveli 2013-05-02 08:09:33