当前位置: 首页 > news >正文

网站开发合同纠纷台州百度快照优化公司

网站开发合同纠纷,台州百度快照优化公司,做网站开发要安装哪些软件,网站开发的工作职责在周志明老师的 《深入理解 JVM》一书中关于 volatile 关键字线程安全性有一个示例代码(代码有些许改动,语义一样): public class MyTest3 {private static volatile int race 0;private static void increase() {race;}public …

在周志明老师的 《深入理解 JVM》一书中关于 volatile 关键字线程安全性有一个示例代码(代码有些许改动,语义一样):

public class MyTest3 {private static volatile int race = 0;private static void increase() {race++;}public static void main(String[] args) {IntStream.range(0, 20).forEach((item) -> {new Thread(() -> IntStream.range(0, 10000).forEach(i -> increase())).start();});while (Thread.activeCount() > 1) {Thread.yield();}System.out.println(race);}
}

老师的目的是为了说明在多线程环境下 volatile 关键字只能保证可见性而不是线程安全的。但是当在我的 IDEA 下运行时,发现程序是没有输出结果且始终是终止不了的,有点纳闷,稍微一分析肯定是在 yield 这个地方有问题。所以尝试把当前 active 的线程打印出来:

Map<Thread, StackTraceElement[]> traces = Thread.getAllStackTraces();
for (Thread thread : traces.keySet()) {System.out.println(thread.getName() + ", isDaemon = " + thread.isDaemon());
}

Thread-19, isDaemon = false
Monitor Ctrl-Break, isDaemon = true
Thread-16, isDaemon = false
Thread-18, isDaemon = false
main, isDaemon = false
Finalizer, isDaemon = true
Thread-17, isDaemon = false
Signal Dispatcher, isDaemon = true
Thread-15, isDaemon = false
Reference Handler, isDaemon = true

发现有一些守护线程,所以我对 while 的条件做了改造:

while (Thread.getAllStackTraces().keySet().stream().filter((t) -> !t.isDaemon()).count() > 1) {Thread.yield();
}

这样程序就能够正常输出结果并退出了。

--------------########################------------------------

原示例代码使用 java 命令运行是没有问题的,只是在 IDEA 下运行会有上述问题,具体原因以及这些 daemon thread 的作用可参考这位老师的博文

另外,在第三版的该章节末尾,老师已经做了声明在这里插入图片描述

http://www.tj-hxxt.cn/news/103579.html

相关文章:

  • 建设银行网站 开户行怎么查搜索引擎营销是什么意思
  • 网站如何做团购信息发布推广平台
  • 长汀党的建设网站seo是什么意思 seo是什么职位
  • 北京网站建设及app北海seo快速排名
  • 仿励志一生lz13网站整站源码网站托管
  • 电话销售做网站犯法吗宁波pc营销型网站制作
  • 电视剧在线观看完整版免费网站2024年阳性什么症状
  • 品牌设计作品集域名seo站长工具
  • 青岛定制网站设计公司收录优美图片手机版
  • 成都旅游网站建设互联网推广公司靠谱吗
  • 网站怎么做跳转页面同城推广有什么平台
  • 衡水做网站价格友情链接推广
  • 做淘宝客找商品网站有哪些windows优化大师有用吗
  • 广州市官网网站建设价格镇江网站建设
  • 做效果图的兼职网站深圳网站开发制作
  • 配音阁在线制作网站昆明网络营销
  • 如何建设一个双语的网站广州的百度推广公司
  • 网站怎么做中英文切换网络优化主要做什么
  • 做公司网站的公怎么制作公司网页
  • 丹东 网站开发seo高效优化
  • 百度秒收录的网站北京seo公司助力网络营销
  • 哪个网站做攻略比较好新闻头条最新消息摘抄
  • 阿里巴巴网站维护怎么做网络营销ppt模板
  • 怎么登录已注册的网站湖南长沙疫情最新消息
  • 重庆网站百度风云搜索榜
  • 如何选择企业网站建设百度快照如何优化
  • 李沧网站建设百度seo排名主要看啥
  • 发稿什么意思宁波seo哪家好
  • 长沙哪里可以做网站深圳seo外包公司
  • 摄影工作室网站建设模板优就业seo课程学多久