为什么执行的结果中
创建线程 1
创建线程 2
创建线程 3
这三个总排在结果的最前面。是不是因为具有相同优先权的线程,他们都会首先执行各自的构造函数,然后再随机执行run()方法的内容?
帮忙解决一下,谢谢!
图片在附件里,不知道怎么弄上文本、、、、
[b]运行线程,首先要获得一个线程对象。这是要靠构造出来的。
线程的执行是在调用start方法后,交由JVM来管理。[/b]
[code="java"]new Thread(new MyRunnable(i)).start();[/code]
[b]执行这一句时,执行构造方法,肯定是按顺序的。至于线程的run()的执行顺序,不确定。[/b]
不知道你要问的是什么问题.
具体run是怎么运行的, 这和系统的线程调度有关,
把 System.out.println("创建线程"+number); 移动到run方法的开头, 在while(true)之前
你要的结果估计就是这样子的