1
A
回答
10
它會運行在當前線程。你會這樣不會啓動新線程。
但是,在你的例子中,這並不重要,因爲你給了新的線程沒有代碼來運行。
3
運行main()
代碼的線程是當前線程。創建一個Thread
對象並調用其方法之一(start()
除外)就像調用類Integer
或String
的方法 - 它不會創建新的實際線程。
在您的代碼示例中,只有當run()
方法完成運行時,主方法的執行纔會繼續。這意味着如果run()
方法有一個無限循環(假設它正在等待傳入請求),那麼即使在調用run()
之後有更多的代碼行,main()
方法也不會繼續運行。
調用aThread.start()
創建一個新的實際螺紋(由對象aThread
表示),使得新的線程調用run()
方法,並返回原來的線程的執行,以在main()
下一行。這意味着新線程可以永久運行,但不會阻止main()
代碼創建更多線程或執行其他任務。
3
它會像你調用普通方法一樣運行。因此該方法將在調用該方法的同一個線程中運行。
0
如果您調用Thread類的start方法,start-method將在一段時間後返回,但在併發中將運行run-method的內容。如果您直接調用run-method,那麼將在方法完成後執行並返回給調用方 - 與每個常規方法調用一樣。
1
它會在當前線程中運行而不是在新線程所以如果你自己調用run方法,它是沒有意義的。因爲它不創建一個新的線程。
相關問題
- 1. 如果我調用GlobalLock()然後調用GlobalUnlock()會發生什麼?
- 2. 如果我提前關閉連接,web方法調用會發生什麼?
- 3. 如果start()方法在它自己的body中調用,Thread程序中會發生什麼?
- 4. 如果我用空的url調用jQuery.post()會發生什麼?
- 5. 如果我不直接調用willMoveToParentViewController&didMoveToParentViewController,會發生什麼?
- 6. 如果我調用WaitHandle.Dispose(),等待線程會發生什麼?
- 7. 我調用MPI_Init()後會發生什麼?
- 8. 如果我錯過了Facebook的回調,會發生什麼?
- 9. 如果我致電退貨會發生什麼;來自Runnable?
- 10. 如果你的服務器對自己做XHR會發生什麼?
- 11. 在DisplayObjectContainer上調用addChild或removeChild方法時會發生什麼?
- 12. 方法調用後原始局部變量會發生什麼?
- 13. 當我使用PHP :: SOAP調用Web服務方法時會發生什麼?
- 14. 如果/當DllImport被多次調用時會發生什麼?
- 15. 如果你兩次調用jQuery $ .getScript('myscript.js')會發生什麼?
- 16. 會發生什麼使用run()而不是線程的start()?
- 17. 如果我在未使用的pthread_t上調用pthread_join()會發生什麼情況?
- 18. 如果HttpClient.execute()中斷會發生什麼?
- 19. 如果action =「」會發生什麼?
- 20. java-當我在構造函數中調用方法時會發生什麼?
- 21. 當我們顯式調用垃圾收集器方法時會發生什麼?
- 22. 當我們在一個零指針調用一個方法會發生什麼
- 23. 在產生懶惰列表的方法中,如果我什麼都不返回會發生什麼?
- 24. 如果我使用printf(「one \ 0two」),會發生什麼情況;?
- 25. 如果我在IntentService中使用AsyncTask會發生什麼?
- 26. 如果我爲html表單使用表格會發生什麼?
- 27. 如果我在鏈接時不使用-g,會發生什麼
- 28. 如果方法A調用方法B並且都具有[Transaction]屬性,會發生什麼情況?
- 29. 如果我的IExceptionPublisher引發異常,會發生什麼情況?
- 30. 當makefile編輯自己時會發生什麼?
什麼是當前線程在這裏? – Johanna 2009-08-12 05:31:33
執行main()方法的主線程。 – 2009-08-12 05:40:43