gpt4 book ai didi

javascript - 对 IE 内存管理和 javascript 的有趣观察

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:37:47 27 4
gpt4 key购买 nike

在 Windows 中,当应用程序最小化时,操作系统通过将数据放置在页面文件中来释放与应用程序关联的内存。其他垃圾收集也可能执行。

在 Internet Explorer 运行我的 javascript 应用程序的情况下,我发现如果内存使用量从 60mb 开始,然后最小化浏览器会将内存减少到 17mb。最大化然后将其恢复到 40mb

增加了 20mb。

我的应用程序大量使用 javascript,我怀疑 IE 正在强制收集不再引用的对象。

通过 javascript(仅限 IE),您可以通过以下方式强制进行垃圾回收:

CollectGarbage()

因此,如果我调用此方法(不最小化屏幕),我只会回收 1 兆或 2 兆。

如果我通过事件队列调用它:

setTimeout(CollectGarbage, 1000)

我回收了大约 3 兆

我的应用程序设计为全天运行,因此内存管理非常重要。

有人知道如何强制 IE 像手动 minise 一样清理内存吗?

以编程方式最小化浏览器的建议将被 mock !

干杯:)

最佳答案

使用delete 关键字取消定义变量/属性,节省内存。 More here .

但如果您只需要丢失对对象属性的引用,只需将其设置为null 并等待下一次收集。

小心使用闭包和 lambda 函数,因为它们传统上是内存消耗和泄漏源。参见 Understanding and Solving Internet Explorer Leak Patterns .

关于javascript - 对 IE 内存管理和 javascript 的有趣观察,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1334882/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com