首頁 > 問答 > 主體
在 main 中创建两个线程,先 thread1.start();然后 thread2.start();能确保 thread1 的 run() 方法先执行吗?
大家讲道理2017-04-18 10:36:58
不能,start 方法呼叫之後,執行緒只是變成就緒狀態,不是運行狀態 —— 然後由 JVM 來安排執行緒何時執行(即執行 Thread 的 run 方法)
伊谢尔伦2017-04-18 10:36:58
當然不能
不過直接執行run方法可以導致在目前的執行緒中串列執行run()中的程式碼
PHP中文网2017-04-18 10:36:58
既然用線程並發,重點考慮的問題就不是執行先後順序了。要先來後到,那就用join方法吧
PHPz2017-04-18 10:36:58
問問題之前能不能先自己去找一下答案。關於線程的基本概念網上資料夠多了吧。