- UID
- 128432
- 帖子
- 22
- 精华
- 0
- 贡献
- 0
- 推广
- 0
- 有效BUG
- 0
- 注册时间
- 2008-7-4
|
20#
发表于 2008-7-5 15:45
| 只看该作者
刚找到这个 东东 看不太懂。。。
windows Xp IE内存泄露,IE重复打开窗口后,窗口白屏, 速度变慢解决办法
window.open 打开一个窗口后。任务管理器中iexploer.exe 进程增加2M内存。关闭减去500k~1M.
这样一直重复操作下去,iexploer.exe使用内存不断增加(大概达到120M 时,50多个窗口左右),打开的IE窗口出现白屏,父窗口无法响应,xp 桌面开始菜单无法打开。xp 右键菜单无响应。结束iexploer.exe 后,恢复正常。
windows2003 和windows2000 下没有问题。
主要问题可能是ie6内存释放问题,或者是嵌入在ie 中的插件问题,无法确认。
被此问题困饶很久。按一下方法可以缓解或解决(具体原因无法深入)。
1、升级ie6 至最新。
2、把
function freedoc(obj){
for ( var p in obj ){
try{
p = null;
}catch(e){
alert(e);
}
}
setTimeout(CollectGarbage, 1);
CollectGarbage();
}
window.document.onunload = freedoc(document);
写入到unloadfree.js 中,在需要的文件中引入。
3、CollectGarbage 并不会马上释放内存,但是会在窗口最小化时释放。所以最好和客户沟通以下,在系统不用时,最小化它。
实际测试中系统比较正常。打开一百以上的窗口,没有出现问题。
注释 //window.document.onunload = freedoc(document);
内存略有上升。但没有上升那么快。
建议:
一定升级一下ie6 |
|