JS垃圾收集器

时间:2018-09-21 16:06:41

标签: javascript garbage-collection

JS GC有两个空格:年轻空格和旧空格。首先,任何变量分配都发生在年轻空间中,并且在其中一些可能被提升为旧集合之后。年轻的收藏限制为1-16MB。我有一个问题:如果开发人员声明的变量大小大于年轻空间的大小,会发生什么?这个变量会直接提升到旧空间吗?

1 个答案:

答案 0 :(得分:0)

垃圾收集器的确切工作方式(例如,垃圾收集器是否使用semi-space young generation)取决于实现,即,不同的javascript运行时之间有所不同,并且除非您想深入了解性能优化领域,否则并不是那么重要。

您在此处描述的行为特定于特定的实现,而不是标准化javascript语言的一般属性。

重要的是,收集器提供规范要求的行为。而且该规范没有说明关于特定大小阈值(例如16MiB)的任何信息,在此之后应该对对象进行不同的处理。

  

此变量是否直接提升为旧空间?

那将是一种可能的实施策略。