专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

JVM 内存结构

57_1.png

堆(Heap)

堆是一块线程共享的内存区域,用来存储对象,包括数组等

栈(VM Stack)

java虚拟机栈:每个方法在访问的时候都会创建一个栈帧,栈帧是每个线程私有的内存,不会被其它线程访问到,用于保存方法中用到的参数、局部变量、返回值等信息。

本地方法栈:与 java 虚拟机栈发挥的作用类似,不过它是为 native 方法服务的。

方法区(Method Area)

方法区是一块线程共享的内存区域,用来存储被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码数据

程序计数器(Program Counter Register)

每个线程都有一个程序计数器,字节码解释器工作就是通过程序计数器来选取下一条需要执行的指令来决定是循环、跳转、分支、异常处理等。在多核处理器中,为了保证线程切换运行后能再次运行时能够找到之前运行的位置继续运行。

我们来看下这段代码在 JVM 中是如何存储的

class Test {

    static int val = 100;
    int a = 1;

    private Test(int a) {
        this.a = a;
    }
    public static void main(String[] args) {
        Test t1 = new Test(1);
        Test t2 = new Test(2);
        int a = 10;
    }
}

57_2.png

文章永久链接:https://tech.souyunku.com/26088

未经允许不得转载:搜云库技术团队 » JVM 内存结构

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们