关于视频中线程的几个问题

来源:2-4 Java线程-隋唐演义实战开发---军队

lucitas

2016-04-06 01:25

我自己测试了下,发现即使隋军的线程的start()在农民军的start()之前,但是实际运行中两个军队的第一次攻击是随机的,这是不是意味着两个同级的线程运行的先后和代码的先后无关?

2,其次就是视频中将舞台设置sleep(50),之所以设置舞台休眠50毫秒是不是因为在运行了隋军线程和农民军线程的同时,舞台线程也在运行,所以三个线程运行的先后是随机的,所以老师怕程序选中运行了舞台线程,直接运行后面停止的代码,导致还没攻击一次就停止攻击了。

有点长求人解答下

写回答 关注

1回答

  • qq_等风来_32
    2016-04-06 10:54:12
    已采纳

    第一个问题 :隋军的线程的start()在农民军的start()之前,那么就是隋军先启动,但是这不意味他就能先得到CPU,启动之后能不能得到cpu不一定

    第二个基本是这个意思,留给军队更多的执行时间,你可以注释掉50毫秒看看运行结果,就能明白了,会发现军队的执行次数会少很多

    lucita...

    谢谢,解释的很好!

    2016-04-06 11:04:20

    共 1 条回复 >

深入浅出Java多线程

带你一起深入浅出多线程,掌握基础,展望进阶路线

186088 学习 · 464 问题

查看课程

相似问题