zoukankan      html  css  js  c++  java
  • jvm内存模型

    来源:https://www.cnblogs.com/dolphin0520/p/3613043.html

    程序计数器:保证了程序的正常执行,可以看做当前线程所执行字节码的行号(实际是指令的偏移地址)指示器,

    字节码解释器工作室就是通过改变这个计数器的值来选择下一条需要执行的字节码指令,(https://blog.csdn.net/youngyouth/article/details/79868299)

    特点: 

    • 线程私有的
    • 是java虚拟机规范里面, 唯一 一个 没有规定任何 OutOfMemoryError 情况的区域(因为程序计数器中存储的数据所占空间的大小不会随程序的执行而发生改变,当执行到下一条指令的时候,改变的只是程序计数器中保存的地址,并不需要申请新的内存来保存新的指令地址)
    • 生命周期随着线程,线程启动而产生,线程结束而消亡
    • 当线程执行的是本地方法的时候,程序计数器中保存的值是空(undefined);原因很简单:本地方法是C++/C 写的,由系统调用,根本不会产生字节码文件

    本地方法栈

    堆:gc

    方法区

        类信息:

        1.类的完整有效名;

         2.这个类型直接父类的完整有效名(除非这个类型是interface或是 
              java.lang.Object,两种情况下都没有父类) ;

         3.这个类型的修饰符(public,abstract, final的某个子集) ;

         4.这个类型直接接口的一个有序列表;

       类型的常量池( constant pool) 
      域(Field)信息 
      方法(Method)信息 
      除了常量外的所有静态(static)变量 

    常量:non-final类变量被存储在声明它的 
    类信息内,而final类被存储在所有使用它的类信息内。 

        

        

  • 相关阅读:
    delete与double free
    OpenCV(1)——基础数据结构CvMat
    防止表单自动提交_随笔2012年5月16日
    Flex 学习笔记学习资料
    当析构函数遇到多线程 ── C++ 中线程安全的对象回调
    .NET Core2.0+MVC 用session,cookie实现的sso单点登录
    TreeView中右击直接获取节点的方法
    webservice 远程调试配置
    数组,集合 转成DataTable 方法
    String类中几个简单的常用方法
  • 原文地址:https://www.cnblogs.com/jyzyz/p/10509967.html
Copyright © 2011-2022 走看看