理解并解决IE的内存泄漏方式

转载 2006年06月21日 11:15:00

http://birdshome.cnblogs.com/archive/2006/06/17/cross_page_leaks.html

code sample:

html>
    
<head>
        
<script language="JScript">

        
function LeakMemory()
        
{
            
var hostElement = document.getElementById("hostElement");

            
// Do it a lot, look at Task Manager for memory response

            
for(i = 0; i < 5000; i++)
            
{
                
var parentDiv =
                    document.createElement(
"<div onClick='foo()'>");
                
var childDiv =
                    document.createElement(
"<div onClick='foo()'>");

                
// This will leak a temporary object
                parentDiv.appendChild(childDiv);
                hostElement.appendChild(parentDiv);
                hostElement.removeChild(parentDiv);
                parentDiv.removeChild(childDiv);
                parentDiv 
= null;
                childDiv 
= null;
            }

            hostElement 
= null;
        }



        
function CleanMemory()
        
{
            
var hostElement = document.getElementById("hostElement");

            
// Do it a lot, look at Task Manager for memory response

            
for(i = 0; i < 5000; i++)
            
{
                
var parentDiv =
                    document.createElement(
"<div onClick='foo()'>");
                
var childDiv =
                    document.createElement(
"<div onClick='foo()'>");

                
// Changing the order is important, this won't leak
                hostElement.appendChild(parentDiv);
                parentDiv.appendChild(childDiv);
                hostElement.removeChild(parentDiv);
                parentDiv.removeChild(childDiv);
                parentDiv 
= null;
                childDiv 
= null;
            }

            hostElement 
= null;
        }

        
</script>
    
</head>

    
<body>
        
<button onclick="LeakMemory()">Memory Leaking Insert</button>
        
<button onclick="CleanMemory()">Clean Insert</button>
        
<div id="hostElement"></div>
    
</body>
</html>

相关文章推荐

理解并解决IE的内存泄漏模式

转载:http://damoqiongqiu.iteye.com/blog/794468 IE设计模式脚本Web应用服务器 Web开发者的进化       过去,内存溢出并没有给Web开发...
  • xyun52
  • xyun52
  • 2011年08月31日 09:06
  • 399

理解并解决IE的内存泄漏方式

这篇文章其实已经看了有些日子了,并且最近的一些开发都在尽量的遵循文中的原则。可是目前的情况是代码规模稍微大点以后,IE的内存泄漏还是很严重,于是我非常生气(倒没啥后果)觉得该把这篇文章挖出来批批。为了...
  • e_wsq
  • e_wsq
  • 2011年12月27日 17:12
  • 269

理解并解决IE的内存泄漏方式

Web开发的发展     在过去一些的时候,Web开发人员并没有太多的去关注内存泄露问题。那时的页面间联系大都比较简单,并主要使用不同的连接地址在同一 个站点中导航,这样的设计方式是非常有...
  • A_post
  • A_post
  • 2012年10月18日 21:08
  • 523

理解和解决IE的内存泄漏模式

http://msdn.microsoft.com/zh-cn/library/bb250448%28v=VS.85%29.aspx。这篇文章是在解决IE内存泄漏问题方面极为重要的一篇文章,可惜一直没...
  • yaaron
  • yaaron
  • 2011年09月28日 21:57
  • 354

Drip 检测IE内存泄漏

  • 2008年09月26日 12:05
  • 135KB
  • 下载

ie内存泄漏检测软件

  • 2008年08月01日 08:34
  • 217KB
  • 下载

简述内存泄漏及解决方式

本人还在培训期,对网络上的知识点进行归纳、总结,然后再分享给大家,有时候也会加入了一些个人的看法和见解,如果有一些谬误欢迎留言。从我目前学习的情况看来,内存泄漏的意思大概就是: 一个代码不规范导致的...

IE8 Img标签内存泄漏的一种替代方案

众所周知,Internet Explorer 8 及其以下的版本存在各式各样的问题,是所有web开发人员的恶梦。而有资料显示,IE8中内存泄露的节点类型包括:form、button、input、sel...
  • ljskr
  • ljskr
  • 2015年02月15日 15:18
  • 1444

IE内存泄漏 【转】

*IE内存泄漏 Web开发的发展     在过去一些的时候,Web开发人员并没有太多的去关注内存泄露问题。那时的页面间联系大都比较简单,并主要使用不同的连接地址在同一个站点中导航,这样...
  • jyb123
  • jyb123
  • 2012年03月19日 11:02
  • 534

关于闭包在IE9及之前浏览器的内存泄漏问题

闭包在IE9及之前浏览器中的内存泄漏问题。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:理解并解决IE的内存泄漏方式
举报原因:
原因补充:

(最多只允许输入30个字)