zoukankan      html  css  js  c++  java
  • Java 内存结构

    1. 程序计数器

    线程私有,是一个记录着当前线程所执行的字节码的行号指示器

    2. Java虚拟机栈

    线程私有,每个方法在执行的同时都会创建一个栈帧,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行完成的过程,就对应着一个栈帧在虚拟机栈中入栈到出栈的过程。

    3. 本地方法栈

    与虚拟机栈类似,只不过是执行的是非Java代码

    4. 堆

    Java 堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。

    堆里还包含一个常量池,保存字面量和符号引用量。

    5. 方法区

    线程共享,保存代码数据,编译好的.class文件,常量,静态变量等

    1.8之前的实现叫永久代

    1.8之后的实现在直接内存中,叫元空间

  • 相关阅读:
    python10.31
    python10.29
    python10.28
    python10.27
    python10.25
    python10.24
    python10.23
    四边形不等式与决策单调
    0x57~0x59
    0x55~0x56
  • 原文地址:https://www.cnblogs.com/Kinghao0319/p/14440635.html
Copyright © 2011-2022 走看看