JVM
小葱ban豆腐g
这个作者很懒,什么都没留下…
展开
-
JVM学习笔记
Java 内存区域与内存溢出异常Java 程序员不需要像C、C++开发者一样去为每一个 new 操作去写配对的 delete / free 代码,不容易出现内存泄漏和内存溢出问题。但 Java 也把内存控制的权力交给了 Java 虚拟机.运行时的数据区域众所周知,Java 虚拟机有自动内存管理机制,如果出现内存泄漏和溢出方面的问题,排查错误就必须要了解虚拟机是怎样使用内存的。下图是 JDK8 之后的 JVM 内存布局。程序计数器程序计数器(Program Counter Register)原创 2020-05-17 19:16:38 · 290 阅读 · 0 评论 -
Java 堆内存是线程共享的吗?
本文来自作者Hollis:原文链接问题引出:1、堆是线程共享的内存区域,栈是线程独享的区域。2、堆主要存放对象实例,栈中主要存放各种基本数据类型、对象的引用。以上两个结论其实不完全正确。在解答之前,先想想Java 对象的内存分配过程是如何保证线程安全的?对象的内存分配过程中,主要是对象的引用指向这个内存区域,然后进行初始化操作。但是,因为堆是全局共享的,因此在同一时间,可能有多个...原创 2020-05-06 16:05:03 · 484 阅读 · 1 评论