问题一:为什么JVM在内存返还策略上会左右为难?
为什么JVM在内存返还策略上会左右为难?
参考回答:
因为这些已释放的内存有可能很快就需要被拿来分配新对象,如果频繁进行内存归还,可能会触发page fault,反而导致性能下降。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615287
问题二:G1垃圾回收器在Java 12之前何时会返还内存给操作系统?
G1垃圾回收器在Java 12之前何时会返还内存给操作系统?
参考回答:
在Java 12之前,G1垃圾回收器只有在Full-GC或并发周期期间才能返还内存给操作系统。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615288
问题三:Java 12后的G1垃圾回收器在内存管理上有什么新的改进?
Java 12后的G1垃圾回收器在内存管理上有什么新的改进?
参考回答:
在Java 12后,G1垃圾回收器会在应用不活动的空闲期间定期尝试继续或触发并发循环,以确定整体的Java堆使用情况,并自动将Java堆中未使用的部分返回给操作系统。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615289
问题四:Java 13针对与之前的版本有什么内容升级?
Java 13针对与之前的版本有什么内容升级?
参考回答:
同Java 10一样,Java 13也是一个小升级版本:
• ZGC的增强[20]:同G1和Shenandoah一样,可以将未使用的内存返还给操作系统了
• AppCDS的增强[21]:在Java10的AppCDS基础上支持动态归档,可以在程序退出时自动创建
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615290
问题五:Java 14针对与之前的版本有什么内容升级?
Java 14针对与之前的版本有什么内容升级?
参考回答:
ZGC支持Mac和Windows了(不过大部分生产环境应该不会用这俩)
G1支持Numa-Aware的内存分配:NUMA(Non-Uniform Memory Access,非统一内存访问架构)
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615291