jvm
小作坊中搬砖
悠然见南山……
展开
-
happens-before原则解读
“先行发生”原则是Java内存模型中定义的两项操作之间的偏序关系,而且先行发生并不是时间上的先后顺序。主要是内存可见性问题。内存可见性问题就是多线程间的共享资源的可见性,因此“先行发生”原则主要描述的就是多线程间的原则。1、程序次序规则(Program Order Rule):在一个线程内,按照控制流顺序,书写在前面的操作先行发生于书写在后面的操作。 在一个线程内,程序内代码的执行顺序是可能被重排序,导致描写代码的执行顺序提前,但是最终呈现在外的结果是不变的。而相互有依赖关系的两行代码则不会...原创 2020-07-12 15:09:27 · 265 阅读 · 0 评论 -
经典垃圾收集器
学习深入理解Java虚拟机总结一下经典垃圾收集器的优缺点:大多数对象是朝生夕死、熬过多次垃圾回收的对象就越难以消亡;Java虚拟机将堆划分区域,分配回收不同的区域新生代和老年代;新生代中对象存在大量要被回收的对象,老年代存在大量难以消亡的对象;然后出现对应不同区域的垃圾回收算法:标记-清除、标记-复制、标记-整理;标记-清除算法:将需要回收的垃圾标记或将不需要回收的垃圾标记出来,然后依次清除掉垃圾对象。主要缺点是:执行效率不稳定,如果堆中存在大量的对象,标记和清除操作会因为对象的增加导致执行效率原创 2020-07-10 21:50:31 · 210 阅读 · 0 评论