时间:2021-07-16 | 标签: | 作者:Q8 | 来源:网络
小提示:您能找到这篇{JAVA虚拟机管理内存}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的JAVA虚拟机管理内存内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
JAVA虚拟机管理内存 虚拟机的运行时数据区管理着内存,分为五个区域。方法区,虚拟机栈,本地方法栈(有些虚拟机把这两个栈合二为一),堆,程序计数器。
程序计数器: 每个线程处理Java方法执行位置的程序计数器所在内存区域。本地方法计数器为空,属于线程私有,即线程各自的程序计数器互不干扰。这个不会弹溢出异常,其余区域都会弹溢出异常。
Java虚拟机栈 :Java方法执行时,创建一个栈帧,保存局部变量表,方法出口等方法相关信息,属于线程私有区域。
本地方法栈:与Java虚拟机栈相似,本地方法执行时,保存方法相关信息。
Java堆:存放对象的内存区域。里面可以分为线程共享区域和线程私有区域。
方法区:公司媒体公关危机属于线程共享区域,存储类信息,静态变量,代码。
当创建线程过多时,会弹出OutOfMemory异常,这是因为系统内存不足以分配Java虚拟机请求的栈精准化营销是什么内存。如果在方法中死循环爆出异常,这是StackOutOfMomory异常。栈的大小超出虚拟机规定大小。
堆又分为老年代和新生代(方法区被称作永久代),老年代主要采用标记整理方法清理内存,新生代通过复制法清理内存。复制法思想将新生代区分为eden区和两个survior区,清理eden区和中石化危机公关其中一个survior区,将存活的引用复制到另一个survior区,如果survior区大小不够,向老年代借空间存储。minorGC和FullGC不同之处,minorGC只清理新生代,FullGC连老年代也清理。
判断对象已死的算法是根搜索算法。
|
上一篇:java虚拟机:对象内存分配与回收
下一篇:汇编器与虚拟机
小提示:您应该对本页介绍的“JAVA虚拟机管理内存”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通JAVA虚拟机管理内存的相关事宜。
关键词:JAVA虚拟机管理内存