当前位置:  开发笔记 > 前端 > 正文

IE挂起,使用100%的CPU

如何解决《IE挂起,使用100%的CPU》经验,为你挑选了1个好方法。

我有一个Web应用程序,它在正常交互过程中挂起IE.通过"IE挂起",我的意思是IE不再响应并使用100%的CPU.唯一能摆脱这种状态的是杀死IE进程.关于应用程序:

它只在浏览器中加载一个页面,与具有Ajax查询的服务器通信,并更新DOM.

我可以使用IE6和IE7重现这一点,但不能使用Firefox或Safari.

我想知道是否有人已经看过这个,如果有一些已知的情况可以让IE进入这个挂起/使用100%的CPU状态.



1> George V. Re..:

使用WinDbg,http://www.microsoft.com/whdc/devtools/debugging/

将它附加到有问题的IE进程.

.symfix +命令将您的符号路径设置为指向Microsoft符号服务器并在本地缓存调试符号.

!runaway命令将枚举进程中的所有堆栈,并告诉您哪个堆栈正在疯狂.

如果你很幸运,你可能会看到一些可识别的东西,例如堆栈顶部的正则表达式替换.或者布局引擎可能已进入无限循环.这些都发生在我身上.

如果callstack没有意义,请使用'g'进行处理,等待几秒钟,按Ctrl + Break,然后再试一次!再次失控.

一旦在本地获得了符号,您还可以使用SysInternals的Process Explorer来查看进程的堆栈.在Process Explorer中配置Symbols选项以指向本地符号缓存,例如c:\ Program Files\Debugging Tools for Windows\sym.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有