Java GC日志问题,哪种说法正确
答案:Eden+From space
(Note: 考虑space resizing,From space跟To space在某些时刻size可能会不一样)
【Java GC日志问题,哪种说法正确】 具体请看code。
1. ParNewGeneration类继承自DefNewGeneration类
http://hg.openjdk.java.net/jdk9/hs-gc/hotspot/file/41e47efcd333/src/share/vm/gc/cms/parNewGeneration.hpp
ctrl+f 到 “class ParNewGeneration: public DefNewGeneration”
2. DefNewGeneration::capacity() 的实现
http://hg.openjdk.java.net/jdk9/hs-gc/hotspot/file/41e47efcd333/src/share/vm/gc/serial/defNewGeneration.cpp
ctrl+f 到 “size_t DefNewGeneration::capacity()”
size_t DefNewGeneration::capacity() const { return eden()-\u0026gt;capacity() + from()-\u0026gt;capacity(); // to() is only used during scavenge}
■网友
自己来回答下这个问题吧。通过jmap可以获取java进程的堆信息,如下图:
图1中NewSize=10MB,SurvivorRatio=8,那么一个Survivor的大小为1MB
图2是跟图1对应的GC日志A处大小为9M,B处大小为29MB,因此问题中红线部分的大小应该是Eden+一块正在被占用的Survivor的和。
推荐阅读
- 江苏■江苏交控坚持问题导向、瞄准职工需求——找准“病灶”当好“产改先行官”
- 贵州在建骨干水源工程达到465座有效解决工程性区域性缺水问题
- 四川眉山瓦屋山景区就游客投诉、停车难等问题公开道歉
- 杭州已整改城市道路无障碍环境问题12467处
- 互联网怎样解决“家政服务上门速度慢”的问题
- 中东问题|
- 中国网汽车|购车2个多月、仅行驶8000多公里 宝骏730遭遇7处问题
- |沛县深入开展教育领域突出问题专项整改
- 交换机,路由器经常性的死机咋办
- dart这编程语言现在发展怎么样了,语法与Java,c#很相似,甚至更简洁
