首页 > 代码库 > jvm - 内存结构以其解析
jvm - 内存结构以其解析
可以将jvm粗略分为以下部分:
- Heap Memory:存储java对象.
- Non-Heap Memory:存储加载的class文件,以及其他meta-data信息.
- Other:存储java代码,jvm内部结构等.
Heap Memory:
是在jvm启动的时候分配的
-Xmx<size>:设置堆的最大大小.
-Xms<size>:设置初始的对大小.
默认情况下,堆的最大大小是64MB,堆是否是固定大小,可扩展都是有gc策略决定的.
可以通过:-XX:MaxPermSize
设置堆的大小,如:-XX:MaxPermSize=128m.
可以在"Memory‘下查看heap和non-heap的信息:
Used Heap Memory: Live and Dead Objects
Used heap memory consists of live and dead objects.
Live objects are accessible by the application and will not be a subject of garbage collection.
Dead objects are those which will never be accessible by the application but have not been collected yet by the garbage collector.
Class list同时显示live and dead objects,可以通过查看gc发生时对象的数量变化来分析情况.
ref: http://www.yourkit.com/docs/kb/sizes.jsp
http://blog.csdn.net/autofei/article/details/7456213
jvm - 内存结构以其解析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。