JVM
文章平均质量分 71
JVM基础
文雨水
这个作者很懒,什么都没留下…
展开
-
Java内存模型
每条线程还有自己的工作内存(Working Memory),线程的工作内存中保存了被该线程使用到的变量的内存副本拷贝,线程对变量的所有操作(读取,赋值等)都必须在工作内存中进行,而不能直接读写主内存中的变量。关于主内存与工作内存之间具体的交互协议,Java内存模型中定义了以下8种操作来完成,虚拟机实现时必须保证下面提及的每一种操作都是原子的,不可再分的(对于double和long 这个占用8个字节的数据,在某些平台上有例外)而普通变量不能做到这一点,普通变量的值在线程传递均需要通过主内存来完成。原创 2023-05-08 09:23:16 · 84 阅读 · 0 评论 -
垃圾收集器
根据老年代的特点,有人提出了另外一种“标记-整理(Mark-Compact)”算法,标记过程中仍然与“标记-清除”算法一样,但后续步骤不是直接对可回收对象进行清理,而是让所有存活的对象都向一端移动,然后直接清理掉端边界以外的内存。为了解决效率问题,一种称为“复制(Copying)”的收集算法出现了,它将可用的内存分为大小相等的两块,每次只使用其中的一块,当这一块的内存用完了,就将还存活的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。原创 2023-05-08 09:21:45 · 45 阅读 · 0 评论