当前位置: 首页 > news >正文

京东商城网站建设贵州建设官方网站

京东商城网站建设,贵州建设官方网站,中小型企业网站优化,响应式网站模板dede程序计数器 多线程时,当线程数超过CPU数量或CPU内核数量,线程之间就要根据时间片轮询抢夺CPU时间资源。因此每个线程有要有一个独立的程序计数器,记录下一条要运行的指令。线程私有的内存区域。如果执行的是JAVA方法,计数器记录正…

7dace8b4d05246f3ac53a3a8fc9e7caf.jpg程序计数器

 

多线程时,当线程数超过CPU数量或CPU内核数量,线程之间就要根据时间片轮询抢夺CPU时间资源。因此每个线程有要有一个独立的程序计数器,记录下一条要运行的指令。线程私有的内存区域。如果执行的是JAVA方法,计数器记录正在执行的java字节码地址,如果执行的是native方法,则计数器为空。

虚拟机栈

线程私有的,与线程在同一时间创建。管理JAVA方法执行的内存模型。每个方法执行时都会创建一个桢栈来存储方法的的变量表、操作数栈、动态链接方法、返回值、返回地址等信息。栈的大小决定了方法调用的可达深度(递归多少层次,或嵌套调用多少层其他方法,-Xss参数可以设置虚拟机栈大小)。栈的大小可以是固定的,或者是动态扩展的。如果请求的栈深度大于最大可用深度,则抛出stackOverflowError;如果栈是可动态扩展的,但没有内存空间支持扩展,则抛出OutofMemoryError。

使用jclasslib工具可以查看class类文件的结构。下图为栈帧结构图:

 

 

 

本地方法区

和虚拟机栈功能相似,但管理的不是JAVA方法,是本地方法,本地方法是用C实现的。

 

JAVA堆

线程共享的,存放所有对象实例和数组。垃圾回收的主要区域。可以分为新生代和老年代(tenured)。

新生代用于存放刚创建的对象以及年轻的对象,如果对象一直没有被回收,生存得足够长,老年对象就会被移入老年代。

新生代又可进一步细分为eden、survivorSpace0(s0,from space)、survivorSpace1(s1,to space)。刚创建的对象都放入eden,s0和s1都至少经过一次GC并幸存。如果幸存对象经过一定时间仍存在,则进入老年代(tenured)。

 

 

方法区

线程共享的,用于存放被虚拟机加载的类的元数据信息:如常量、静态变量、即时编译器编译后的代码。也成为永久代。如果hotspot虚拟机确定一个类的定义信息不会被使用,也会将其回收。回收的基本条件至少有:所有该类的实例被回收,而且装载该类的ClassLoader被回收

 

垃圾回收算法

 

标记-清除算法(Mark-Sweep)

从根节点开始标记所有可达对象,其余没标记的即为垃圾对象,执行清除。但回收后的空间是不连续的。

 

复制算法(copying)

将内存分成两块,每次只使用其中一块,垃圾回收时,将标记的对象拷贝到另外一块中,然后完全清除原来使用的那块内存。复制后的空间是连续的。复制算法适用于新生代,因为垃圾对象多于存活对象,复制算法更高效。在新生代串行垃圾回收算法中,将eden中标记存活的对象拷贝未使用的s1中,s0中的年轻对象也进入s1,如果s1空间已满,则进入老年代;这样交替使用s0和s1。这种改进的复制算法,既保证了空间的连续性,有避免了大量的内存空间浪费。

 

 

标记-压缩算法(Mark-compact)

适合用于老年代的算法(存活对象多于垃圾对象)。

标记后不复制,而是将存活对象压缩到内存的一端,然后清理边界外的所有对象。

 

 

 

JVM参数:

 

-XX:+PrintGCDetails 打印垃圾回收信息

 

-Xms 为Heap区域的初始值,线上环境需要与-Xmx设置为一致,否则capacity的值会来回飘动

-Xmx 为Heap区域的最大值

-Xss(或-ss) 线程栈大小(指一个线程的native空间)1.5以后是1M的默认大小

-XX:PermSize与-XX:MaxPermSize 方法区(永久代)的初始大小和最大值(但不是本地方法区)

-XX:NewRatio 老年代与新生代比率

-XX:SurvivorRatio Eden与Survivor的占用比例。例如8表示,一个survivor区占用 1/8 的Eden内存,即1/10的新生代内存,为什么不是1/9?因为我们的新生代有2个survivor,即S1和S22。所以survivor总共是占用新生代内存的 2/10,Eden与新生代的占比则为 8/10。

-XX:MaxHeapFreeRatio GC后,如果发现空闲堆内存占到整个预估的比例小于这个值,则减小堆空间。

-XX:MinHeapFreeRatio GC后,如果发现空闲堆内存占到整个预估的比例大于这个值,则增大堆空间。

-XX:NewSize 新生代大小

 

参考文章:

http://www.yayakq.cn/news/869921/

相关文章:

  • 做网站赠送济南网站制作推广
  • 手表网站域名百度网址注册
  • 坑人的网站链接怎么做优秀网页设计网站
  • 贵港市建设局网站网站建设添加资料
  • 空调公司网站建设wordpress缓存稿
  • 建设部网站首页格式合同seo免费视频教程
  • php 开源 建站青海省公路建设服务网站
  • 京东的网站建设介绍网站设计设计方案
  • 佛山家具网站建设公司陕西高速公路建设网站
  • 英文网站推荐软件app免费下载大全
  • 服装公司网站网页设计东莞企业黄页资料
  • 华为网站建设官网苏州十大软件公司招聘
  • php网站开发优化在线制作二维码生成器
  • 石景山郑州阳网站建设上海网站建设哪里便宜
  • 大良营销网站建设咨询定制麻将app软件多少钱
  • 企业网站可以做游戏类网站么团队建设游戏网站
  • 网站上怎么做推广一站式网络营销
  • 设计公司vi设计北京企业网站seo平台
  • asp.net 4.0网站开发高级视频教程西安高端网站建设首选
  • 泸州工投建设集团有限公司网站网站联系我们的地图怎么做
  • 建网站大约得用多少钱公司建设内容是什么
  • 网站建设的公司有哪些外包加工网合法吗
  • 钓鱼网站的主要危害企业网站建设的要素有哪些
  • 班级优化大师官方网站网站设计h5
  • 外贸网站推广方法之一安装网站模板
  • 学习建站的网站怎么制作自己的链接
  • wordpress设置网站背景图片网站建设作业
  • 个人的网站什么网站可以查房屋建筑面积
  • 购物网站建设要多少钱seo推广有用吗
  • 通用网站建设需求分析长沙网络公司营销推广