Java内存区域

异常说明:
StackOverflowError:线程请求的栈深度虚拟机所允许的深度
OutOfMemoryError:如果虚拟机可以动态扩展,扩展时无法申请到足够的内存

名称 存放内容/作用 线程私有/共享 异常类型 生命周期
程序计数器 正在执行的虚拟机字节码指令地址 私有 与线程相同
虚拟机栈 局部表量表、操作数栈、动态链接、方法出口等 私有 StackOverflowError、OutOfMemoryError 与线程相同
本地方法栈 执行使用到的Native方法服务 私有 StackOverflowError、OutOfMemoryError 与线程相同
Java堆 存放对象实例,可以细分为:新生代、老年代 共享 OutOfMemoryError GC回收
方法区(Non-Heap(非堆)) 类信息、常量、静态变量、即时编译器编译后的代码等数据 共享 OutOfMemoryError
运行时常量池(方法区的一部分) 存放编译期生成的各种字面量和符号引用 共享 OutOfMemoryError
直接内存 共享 OutOfMemoryError
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容