JS垃圾收集

时间:2011-04-24 21:09:37

标签: javascript garbage-collection

什么触发JavaScript垃圾收集器运行?显然这取决于JS引擎,但试图得到一个粗略的想法。是仅当可用内存低于某个阈值时?

感谢。

3 个答案:

答案 0 :(得分:2)

它有所不同。 Chrome(V8)只是基于计时器和活动监视器(它在发动机繁忙时尝试不运行)。

答案 1 :(得分:2)

它确实变化很大。例如,SpiderMonkey将基于各种启发式方法来分析GC已分配了多少内存,但浏览器嵌入也会在各种情况下触发GC,例如在处理了足够的DOM事件之后,脚本运行了足够长的时间后,某些事情发生了关闭/加载标签/窗口等等。所涉及的启发式方法在不同的Firefox版本之间发生了巨大的变化,并且会再次发生变化。

这就是一个浏览器的全部内容。

答案 2 :(得分:0)

这取决于每个浏览器,据我所知,你完全无法控制它。

同样,你无法控制何时渲染DOM,如果你想显示一个加载栏,这真的很烦人:D

你为什么想知道这个?