章节
问答
课签
笔记
评论
占位
占位
今日不再显示

下一节课程: volatile不能保证原子性(中) (03:10) 下一节 重新观看

3 秒后播放下一节

为你推荐

Marton Zhang,国内某大型互联网砖厂程序猿,常活跃于开源社区,热爱开源,乐于分享,致力于技术改变生活,希望有朝一日,能因为我而让这个世界有一些小小的不同

提问题

写笔记

代码语言
公开笔记
提交
加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最赞回答 / iceWang
一个或某几个操作只能在一个线程执行完之后,另一个线程才能开始执行该操作,也就是说这些操作是不可分割的,线程不能在这些操作上交替执行文中的 i++ 包括 3 个操作读取 i 的值i 的值 +1 将 i 赋值给 i在这 3 个操作中可能会有其他线程开始执行,因此不是原子性的

已采纳回答 / 特南克斯
main 线程是会和  new 出来的线程并行执行的,如果没有那个 while 判断,下面这行代码<...code...>就会在其他线程执行完之前就执行了。加 while 判断,就是为了等五百个线程执行完毕

已采纳回答 / 再冷也要光着脚
还有一个监控线程的存在:Monitor Ctrl-Break 可以将活动线程数改为>2,具体原因你可以查下 百度上有很多 我就不粘贴了。。

最新回答 / doubleC丶
idea正常运行会起两个线程,debug会起一个线程

最新回答 / qq_可口可乐_4
线程是抢占式执行的,sleep意味着当前线程在一段时间内不执行操作,可是该线程的工作内存中已经得到了number,没有改变number的值意味着主内存中的值也没有改变,在sleep这段时间内其他线程又得到主内存中的number,这个number与sleep中的number可能一样(要是没有其它线程),这样的话这2个线程在最终执行完之后等于number++只执行一次

最赞回答 / demo_h
恩 准确说应该是让线程处于阻塞状态

最赞回答 / 慕婉清3525975
可参考 http://blog.csdn.net/xiaolinzi007/article/details/44487851 具体为什么idea返回2,是因为多了个monitor ctrlbreak线程。
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言