用MyEclipse8.5编写了一段Java线程,但感觉结果总是同步的,是我的JDK的问题,还是CPU太小了?

[复制链接]
查看11 | 回复1 | 2011-2-28 08:59:12 | 显示全部楼层 |阅读模式
public class RunnableThread implements Runnable {
private String name;
public RunnableThread(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(name+"运行,i="+i);
}
}
public static void main(String[] args) {
RunnableThread thread1=new RunnableThread("线程A");
RunnableThread thread2=new RunnableThread("线程B");
Thread demo1=new Thread(thread1);
Thread demo2=new Thread(thread2);
demo1.start();
demo2.start();

我的结果是
线程A运行 i =0
线程A运行 i =1
线程A运行 i =2
线程A运行 i =3
线程A运行 i =4
public class RunnableThread implements Runnable {
private String name;
public RunnableThread(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(name+"运行,i="+i);
}
}
public static void main(String[] args) {
RunnableThread thread1=new RunnableThread("线程A");
RunnableThread thread2=new RunnableThread("线程B");
Thread demo1=new Thread(thread1);
Thread demo2=new Thread(thread2);
demo1.start();
demo2.start();
}
}
我的结果是
public class RunnableThread implements Runnable {
private String name;
public RunnableThread(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(name+"运行,i="+i);
}
}
public static void main(String[] args) {
RunnableThread thread1=new RunnableThread("线程A");
RunnableThread thread2=new RunnableThread("线程B");
Thread demo1=new Thread(thread1);
Thread demo2=new Thread(thread2);
demo1.start();
demo2.start();

我的结果是
线程A运行 i =0
线程A运行 i =1
线程A运行 i =2
线程A运行 i =3
线程A运行 i =4
public class RunnableThread implements Runnable {
private String name;
public RunnableThread(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(name+"运行,i="+i);
}
}
public static void main(String[] args) {
RunnableThread thread1=new RunnableThread("线程A");
RunnableThread thread2=new RunnableThread("线程B");
Thread demo1=new Thread(thread1);
Thread demo2=new Thread(thread2);
demo1.start();
demo2.start();
}
}
我的结果是
线程A运行 i =0
线程A运行 i =1
线程A运行 i =2
线程A运行 i =3
线程A运行 i =4
线程B运行 i =0
线程B运行 i =1
线程B运行 i =2
线程B运行 i =3
线程B运行 i =4
我的CPU是Intel Pentium M 1.20,一台二手IBM X40
排除偶然性,我试了好几次。

回复

使用道具 举报

千问 | 2011-2-28 08:59:12 | 显示全部楼层
循环个几万次试试你就会发现的。循环的次数太少啦。还可以设置一下优先级
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行