• jvm结构


    java虚拟机运行时数据区:

                 (数据)线程共享:方法区,堆,本地方法库。

                 (指令)线程私有的内存:虚拟机栈,本地方法栈,程序计数器。

        

    1)线程共享

    方法区:

        用来存储被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据。被所有线程共享。

    堆:

        内存最大的一块,被所有线程共享。存放对象实例和数组。是垃圾收集器管理的主要区域。

    本地方法:

        Native方法服务。调用第三方实现的方法。和虚拟机栈一样,也会出现栈区域溢出的异常。

     s

    2)线程私有的内存

     虚拟机栈:

        和线程的生命周期相同。描述的是java方法执行的内存模型。每个方法在执行的时候都会创建一个栈帧,用于存储局部变量表,操作栈数,动态链接,方法

    出口等信息。

    本地方法栈:  

        本地方法栈加载本地方法进来。

    程序计数器:

      没有内存溢出情况。记录执行当前线程字节码的行号。

        

  • 相关阅读:
    经典算法以及案例总结
    supervisor的介绍
    快速排序算法
    mysql 省市联动sql 语句
    前段验证框架 formValidator
    css 之!important
    js 倒计时
    js 设置url 参数值
    java 获取指定日期
    js 日期控件laydate使用
  • 原文地址:https://www.cnblogs.com/chen-msg/p/8270281.html
Copyright © 2020-2023  润新知