如何使用IE7 Javascript内存检漏仪?

Geo*_*pty 7 javascript internet-explorer memory-leaks

我下载了"JavaScript中的内存泄漏检测"为IE在别处提到的SO和也在这里,但无法弄清楚如何使用它.显然曾经有过另一篇博文可能会详细介绍,但上面链接中的链接却被打破了.

我也尝试过使用sIEve,除了我无法让"复制"功能正常工作外,它的工作做得还不错.也就是说,我想复制各种统计数据,以便我可以离线操作它们并为我的经理准备一份报告.然而,正如我所说,复制数据存在问题,所以在我向开发人员报告这些问题之前,如果他们然后解决问题,我所能得到的只是非交互式屏幕截图.

所以我问SO社区他们如何使用上述工具,或者他们是否知道任何其他易于使用的工具来测量IE7 Javascript内存泄漏,我可以用它来准备管理报告,例如从中可以导出原始数据.

提前致谢

Geo*_*pty 6

这是我自己在大约的经历中的sIEve.我提出这个问题后24小时.它提供了充足的,可视的,尽管是非交互式的数据,例如"只读".它确实提供了一种"复制"它在各种"Show"网格中显示的数据的方法,在我的案例中"Show In Use".然而,当粘贴到文本文档中时,这导致的数据量远远超出网格中实际显示的数据,并且是非常丰富的.

让我详细说明我的用例.sIEve本身并未表示"泄漏",而是"孤儿".要了解这在sIEve用语中的含义,请参阅此页面.

一旦我使用sIEve浏览器访问我感兴趣的页面,我就使用"使用中显示"功能来显示一个包含大约10或12个字段的网格.通过单击标题可以对列数据进行排序,因此我可以对"孤立"列进行排序,然后选择指示"是"的行范围,然后单击"复制"

但是我首先问了这个问题,因为复制似乎没有工作,或者崩溃了.我在三分之一或一半的时间里继续遇到这些问题,但仍然坚持不懈,最后能够将原始数据粘贴到文档中.

正如我所提到的,原始数据量很大.所以到目前为止我唯一开发的是用于计算"记录"的正则表达式.每条记录都以如下行开头:

http://localhost:8086/yms_web/yardmanager.do    (1 reference)
Run Code Online (Sandbox Code Playgroud)

它将始终指示引用的数量,因此这是我为在原始数据中查找这些行而开发的正则表达式; 注意我正在使用Cygwin:

$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt
http://localhost:8086/yms_web/yardmanager.do    (5 references)
http://localhost:8086/yms_web/yardmanager.do    (1 reference)
http://localhost:8086/yms_web/yardmanager.do    (2 references)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,正则表达式正确处理复数引用的可能性; 我还没有看到它处理有双位数引用的情况,但我相信它应该.

在任何情况下,通过管道上面的输出到wc -l你快速找到你多少行有,所以在我的情况下,通过从电网获取数据,其中"赵氏孤儿"等于"是",这样在连续HTTP请求,我能够看到孤儿的数量是如何增加的,例如:

$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt | wc -l
3

$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_click.txt | wc -l
4

$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_click.txt | wc -l
4

$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_close.txt | wc -l
66

$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_close.txt | wc -l
163
Run Code Online (Sandbox Code Playgroud)

当然,egrep命令可以在一个bash脚本中调用,循环遍历感兴趣的文件,但我还没有走得那么远.

顺便说一句,这是一个ExtJS应用程序,我在他们的论坛上问了一些很好的建议,并且能够大大减少孤儿的数量!

希望这能帮助其他人,并且不确定为什么这个问题已被投票决定关闭