02 2021 档案

摘要:什么是JIT JIT 是 just in time 的缩写, 也就是即时编译编译器。 在运行时 JIT 会把翻译过的机器码保存起来,以备下次使用,因此从理论上来说,采用该 JIT 技术可以接近以前纯编译技术。下面我们看看,JIT 的工作过程。 备注:寄存器的使用是编译器的一个非常普遍的优化。寄存器的 阅读全文
posted @ 2021-02-26 15:43 猿必过 阅读(3288) 评论(0) 推荐(0)
摘要:CPU 资源占用过高 top 查看当前 CPU 情况,找到占用 CPU 过高的进程 PID=123。 top -H -p123 找出两个 CPU 占用较高的线程,记录下来 PID=2345, 3456 转换为十六进制。 jstack -l 123 > temp.txt 打印出当前进程的线程栈。 查找 阅读全文
posted @ 2021-02-25 09:32 猿必过 阅读(140) 评论(0) 推荐(0)
摘要:强引用:new 出的对象之类的引用,只要强引用还在,永远不会回收。 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下: Object strongReference = new Object(); 软引用:引用但非必须的对象,内存溢出异常之前,回收。 软引用可以和一个 阅读全文
posted @ 2021-02-24 09:55 猿必过 阅读(534) 评论(0) 推荐(0)
摘要:细节方面不同 G1 在压缩空间方面有优势。 G1 通过将内存空间分成区域(Region)的方式避免内存碎片问题。 Eden, Survivor, Old 区不再固定、在内存使用效率上来说更灵活。 G1 可以通过设置预期停顿时间(Pause Time)来控制垃圾收集时间避免应用雪崩现象。 G1 在回收 阅读全文
posted @ 2021-02-22 22:52 猿必过 阅读(1799) 评论(0) 推荐(0)
摘要:常见的垃圾回收算法有: 标记-清除算法、复制算法、标记-整理算法、分代收集算法 标记-清除算法 标记—清除算法包括两个阶段:“标记”和“清除”。 标记阶段:确定所有要回收的对象,并做标记。 清除阶段:将标记阶段确定不可用的对象清除。 缺点: 标记和清除的效率都不高。 会产生大量的碎片,而导致频繁的回 阅读全文
posted @ 2021-02-21 23:34 猿必过 阅读(997) 评论(0) 推荐(0)