如何等待一種方法來完成使用C#?等待方法完成
等待方法完成
回答
除非您使用多個線程,否則執行將不會繼續在調用代碼的中,直到方法完成。
如果你是使用多線程,它真的取決於你如何啓動任務。例如,您可以使用異步委託執行(foo.BeginInvoke(...)
)或任務並行庫,或者簡單地創建一個新線程。每種方法都有自己的等待,直到任務/線程完成。請給我們更多的信息,我們可以幫你多,但選擇可以包括:
- delegate上
EndInvoke
,傳遞由BeginInvoke
- 調用
Task.Wait
(任選超時)返回IAsyncResult
- 調用
Thread.Join
(任選超時)
+1一個明智的答案,喬恩Skeet不噴出任何廢話。 – mdm 2011-03-14 10:01:56
+1當然.. @mdm這就是爲什麼我們有[Jon Skeet](http://blog.stackoverflow.com/2008/11/stack-overflow-is-you)在這裏 – 2011-03-14 10:10:23
爲實際提供選項的情況下+1多線程代碼。 – 2011-03-14 10:10:29
我以爲你是問如何等待另一個蘇氨酸執行代碼在你的主線程中。爲此目的,Thread.Join()方法將做你想要的。
(一個很好的教程就如何做到Multithreading。)
我知道你在幾個月前發佈了,但是這個教程的鏈接只是挽救了我的生活。我無法感謝您分享該鏈接。 – JClaspill 2011-10-28 16:14:45
@JClaspill我很高興它幫助你:) – 2011-10-28 17:48:07
- 1. 活動完成方法等待完成?
- 2. 等待在iOS中完成的方法
- 3. 等待異步方法完成
- 4. 等待異步方法來完成
- 5. 等待兩種異步方法完成
- 6. 無效擴展等待方法完成
- 7. 等待jquery .html方法完成渲染
- 8. 等待異步方法完成
- 9. 等待異步方法完成
- 10. 等待完成異步方法
- 11. 等待Xcode的方法來完成
- 12. Node.js/Javascript - 等待方法完成
- 13. 等待類方法完成C#
- 14. JUnit - 不等待測試方法完成
- 15. 如何等待異步方法等待完成所有執行?
- 16. 等待完成
- 17. 等待完成
- 18. 等待外部方法完成之前完成?
- 19. 如何在繼續之前等待方法完成完成?
- 20. 等待webworker完成
- 21. 等待NSURLSessionTask完成
- 22. jquery,等待完成
- 23. 等待IDBCursor.onsuccess完成
- 24. 等待ExecWB完成
- 25. 等待GUI完成
- 26. WebRequest.GetResponse等待完成
- 27. 等待BackgroundWorker完成?
- 28. 等待webrequest完成
- 29. 等待AsyncTask完成
- 30. delayed_job等待完成
你能解釋一下好一點你想實現什麼,請? – FarligOpptreden 2011-03-14 09:58:41
如果您的應用程序不是多線程的,並且您調用的方法不是異步,則在方法返回後將調用下一段代碼。我們在這裏需要更多的信息來處理,你使用線程還是'Begin ..()'方法? – Kevin 2011-03-14 10:01:30
我們必須假設您正在討論異步方法調用嗎? – 2011-03-14 10:02:16