none
IE消耗内存 RRS feed

  • 问题

  • 我有个WEB程序在ie9打开,会把内存耗尽,然后IE进程就挂起来了。

    但我测试了一下,IE9耗费的内存最大是1.4G,而实际上我的PC的内存是4G,

    我有如下问题,有人能帮我解答下吗?

    1、IE所占用的内存的最大值是怎么计算的,跟哪些有关系,各自占比又是多少呢?

    比如PC最大是4G,为什么IE的内存只能耗费掉1.4g呢。

     

    2011年10月17日 9:46

全部回复

  • 你好,

    IE使用的内存由操作系统分配,它所能占用的内存和本身的需要及操作系统的运行环境、内存分配的策略有关系。在这里,IE使用过多内存导致挂起,更多的是Web程序的问题。你是否可以贴出部份程序代码,那样我们可以尝试重现这个问题,找出具体原因所在。

    谢谢。


    Leo Tang [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    2011年10月20日 8:19
    版主
  • 我的问题主要是发生在如下语句,

    n.innerHTML = this.toString();

    通过如上代码段,我生成了一个很大表格,导致了内存不足。

    根据最近的了解,IE的虚拟内存最多只能被耗掉2G(但是有时候偶尔也看到超过2G,不同操作系统还不一样),超过2G的话就会报如上内存不足的错误。

    另外,IE在执行innerHTML存在很大的内存泄露问题,除了跟内嵌onclick有关系外,

    还跟style等有关系。情况非常复杂。不知道你有碰到类似情况吗?

    2011年10月28日 7:03
  • 由于我的表格很复杂,

    我做了一些简单的测试,用createElement, attachEvent等去替代,

    内存泄露的情况可能会好转,

    但是执行速度就慢了非常多了。

    2011年10月28日 7:18
  • 比如PC最大是4G,为什么IE的内存只能耗费掉1.4g呢。

    其它的运行程序和系统也要用内存的。可以在任务管理器中查看。


    2012年2月20日 1:40