
Java探索
Shu Han
这个作者很懒,什么都没留下…
展开
-
volatile为什么不保证原子性?
一言概之:volatile 只保证读的可见性,对于一段非原子操作的代码,volatile 只保证线程在获取共享变量的时候会根据通知去从工作内存(即高速缓存)还是从主存获取。参考资料:Java并发编程:volatile关键字解析...原创 2020-10-23 17:32:09 · 195 阅读 · 0 评论 -
while(Thread.activeCount()>1) 在IDEA中死循环问题
记录Thread.activeCount()的值为2的问题//在等待多线程执行结束时使用Thread.activeCount() > 1进行判断发现一直在死循环 while (Thread.activeCount() > 1) { Thread.yield(); }发现Thread.activeCount一直为2,将当前运行线程打印出来看一下 if (Thread.activeCount() == 2) {原创 2020-10-23 16:26:12 · 1164 阅读 · 0 评论