为了账号安全,请及时绑定邮箱和手机立即绑定

细说多线程之Thread VS Runnable

难度初级
时长 1小时 0分
学习人数
综合评分9.63
171人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.5 逻辑清晰
老师的包名怎么是mkw,我看其他老师都是com.imooc,zs,zs
https://blog.csdn.net/mayp1/article/details/69950530

最新回答 / qq_Clarence_7
首先我理解的守护线程是“保护线程”第一守护线程肯定会执行。第二如果去掉肯定会一直将线程执行完,如中间未执行完中断线程的话应该会造成空数据或是不可打开文件。个人理解,没有实际代码支撑。
老师你的2-3那个好像有点问题,就是如果我把runnable的run方法的while里睡眠几毫米,肯定不是你说的那个结果。其实如果不睡眠,你要是多试试也不会是这个结果的好像
为什么把代码改成--ticketsCount;
int current = ticketsCount;然后输出current就可以显示正确的值了?不然就显示33220之类的值,4根本就不出现。
哈哈,老师这个系统够旧的

已采纳回答 / 知道比不知道好
java的多线程编程自己觉得是一种模拟多线程。所有的线程函数都在一个框架下工作,或者说被框架控制。sleep函数本身就是一个计数器,你可以想象成里面添加了一个while循环。在该循环执行时,当前线程休眠,其他线程运行。当循环结束时,当前线程被唤醒,一旦拥有CPU资源便开始运行。
还有一种情况,就是运行状态直接到就绪状态,而不是通过阻塞。yield方法就是让当前线程从运行状态到就绪状态,而不是阻塞
我的居然没阻塞。。。。
涨知识了,谢谢老师。
我也想说,把票数设置static你再看看
感谢 感谢
窗口2窗口卖出了1张票:剩余票数为2
窗口3窗口卖出了1张票:剩余票数为2
窗口1窗口卖出了1张票:剩余票数为2
窗口3窗口卖出了1张票:剩余票数为0
窗口2窗口卖出了1张票:剩余票数为1
讲解的比较到位 赞一个
总共5张票,MyThread 类中写个实例变量private int ticketsCont = 5,为什么不写成类变量,java 基础没学好就出来误导人,如下结果,多核多线程CPU并行,不解释。
窗口2 余票 2
窗口3 余票 2
窗口1 余票 2
窗口3 余票 0
窗口2 余票 1
课程须知
学习本课程前,你需要熟练掌握Java的基础语法,熟悉Java中创建线程的两种方式,熟悉Java多线程中常用的一些方法。
老师告诉你能学到什么?
1、多线程创建方式的比较和选择 2、线程的生命周期、守护线程

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消