首页 > 问答 > 正文
在 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
问问题之前能不能先自己去寻找一下答案啊。关于线程的基本概念网上资料够多了吧。