栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

MaxTenuringThreshold-工作原理如何?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MaxTenuringThreshold-工作原理如何?

Java堆中的每个对象都有一个标头,垃圾收集(GC)算法使用该标头。年轻的空间收集器(负责对象提升)使用此标头中的几位来跟踪幸存的收集对象的数量(32位JVM为此使用4位,而64位可能更多)

在收集年轻空间期间,将复制每个对象。可以将对象复制到一个生存空间(一个在年轻GC之前为空的生存空间)或一个旧空间。对于每个要复制的对象,GC算法都会增加其使用
期限 (幸存的收藏数量),如果该使用 期限 超过当前使用 期限阈值
,则会将其复制(升级)到旧空间。如果生存空间已满(溢出),也可以将对象直接复制到旧空间。

对象的旅程具有以下模式:

  • 在伊甸园分配
  • 由于年轻的GC而从伊甸园复制到生存空间
  • 由于年轻的GC而从生存空间复制到(其他)生存空间(这可能会发生几次)
  • 由于年轻的GC(或完整的GC)而从生存(或可能的伊甸园)提升到旧空间

实际的使用 期限阈值 是由JVM动态调整的,但是MaxTenuringThreshold对此设置了上限。

如果设置MaxTenuringThreshold = 0,则所有对象将立即升级。

我有几篇有关Java垃圾回收的文章,您可以在其中找到更多详细信息。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/595571.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号