![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
虚-空-假-面
这个作者很懒,什么都没留下…
展开
-
多线程之理解join()
很长一段时间都对join()方法有疑惑,主要有以下2点(为了表述清楚,把现在执行的线程称为main线程,在main中调用join()的线程称为sub线程) (1)join()到底怎么实现main线程阻塞,sub线程执行的 (2)sub线程执行玩之后为什么main线程会被唤醒 为了解决这个问题,可以从这样一个例子出发 public static void main(String[] args){ ...原创 2019-05-07 05:03:50 · 217 阅读 · 0 评论 -
多线程之volatile关键字
volatile关键字的特点 1)保证变量的可见性 也就是保证CPU在执行程序过程中,被volatile修饰的变量不再从高速缓存中找,而是直接从主存中寻找,从而保证每次都是变量最新的数据 2)保证有序性 JVM为了高效率的执行java程序,在不影响结果一致的情况下会对编译后的执行进行“重排序”。加入volatile关键字之后会保证该变量从创建到修改到使用的过程,JVM不会对其中的执行进行重排序,从...原创 2019-06-12 17:48:45 · 124 阅读 · 0 评论