最爱重卡 2017-03-08 13:47 采纳率: 100%
浏览 1175
已采纳

Java多线程问题——同样的代码,得不到一样的结果?

初学自学java,学到多线程时,按照书中例子里的代码自己手动敲了一遍,怎么都得不到和书中一样的输出结果,请问为什么会这样?
附上自己敲的代码&运行结果和书中的代码及其运行结果
自己敲的代码如下:

    public class ThreadDemo9_2
{
    public static void main(String args[])
    {
        TestThread t=new TestThread();
        new Thread(t).start();
        for(int i=0;i<10;i++)
            System.out.println("main线程在运行。");
    }
}
class TestThread implements Runnable
{
    public void run()
    {
        for(int i=0;i<10;i++)
            System.out.println("TestThread在运行。");
    }
}

自己敲的代码运行结果:

书中的代码

书中的运行结果

  • 写回答

3条回答 默认 最新

  • Ljcode_2014 2017-03-08 14:12
    关注

    不一样是正常的,这段代码的意思是 开启一个线程去打印10次“TestThread 在运行”,同时自己也循环10次打印“main 线程在运行”。
    打个比方你告诉一个人“让他去做一件事情做10遍“,之后你自己也做类似的事情10遍。你们两个同时做这样的事情,你完成一件事、他完成一件事、他完成一件事、你完成一件事。。。 到底最后你们完成这些任务的顺序是什么样子的呢?这个是跟你们两个实际做事的人的效率相关。
    建议你了解下线程的概念。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题
  • ¥35 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化