zoukankan      html  css  js  c++  java
  • JVM

    1, PC寄存器

          每个线程拥有一个PC寄存器

          在线程创建时创建

          指向下一条指令的地址

         执行本地方法时,PC的值为undefined

    2,方法区

         保存装载的类信息

                类型的常量池

                字段,方法信息

        方法字节码

          通常和永久区关联在一起

    *    JDK 6时,String 等常量信息置于方法区,JDK7时,已经移到了 堆

    3,JAVA堆

         和程序开发密切相关

          应用系统对象都保存在堆中

          所有线程共享JAVA堆

         对分代GC来说,堆也是分代的

         GC 的主要工作区间

      

          |————————————————-  |

          |    eden  | s0   |  s1 |  tenured      |

          |___________________________|

    4,   JAVA 栈

         线程私有的

         栈由一系列帧组成(JAVA 栈也叫帧栈)

         帧保存一个方法的局部变量,操作数栈,常量池指针

      每一次方法调用创建一个帧,并压栈

    局部变量在栈上分配,栈上分配不可能出现内存泄漏

    java 中的栈上分配

                  

    逃逸指的是   栈是线程私有的, 是否能被其他的线程引用

    Java 的内存模型

        

    可见性

    重排序

    指令重排

  • 相关阅读:
    python3爬虫 -----新浪微博(m)-------评论爬取
    hdu 5585
    Atcoder 092
    python3糗事爬取-------------------糗事百科
    python3爬虫 -----爬取职位招聘信息-------from腾讯社会招聘
    python3电影详细信息爬取-------------------电影天堂
    Python词云分析
    合并排序
    活动安排问题
    你好,2019!
  • 原文地址:https://www.cnblogs.com/wind90/p/5457120.html
Copyright © 2011-2022 走看看