读书人

java多线程遇到的奇怪有关问题

发布时间: 2012-11-07 09:56:10 作者: rapoo

java多线程遇到的奇怪问题
public class TestThread1 {
public static void main(String args[]) {
Runner1 r = new Runner1();
Thread t =new Thread(r);
t.start();

for(int i=0; i<100; i++) {
System.out.println("Main Thread:------" + i);
}
}
}

class Runner1 implements Runnable {
public void run() {
for(int i=0; i<100; i++){
System.out.println("Runner1:" + i);
}
}
}
去掉主程序输出中的 + i 线程不再交替执行
不知道为什么,求解释

[解决办法]

探讨
我把for改成10000,有“+i”试试5次,交替很明显,去掉之后,除了中间略微闪了几下(不知是不是线程执行),剩下的就是主线程执行完,另一个才执行。
这两个对比说明这根电脑的运行速度应该没有关系吧。
还有一点要声明:我是在DOS下执行的

读书人网 >J2EE开发

热点推荐