我想在任何桌面浏览器中找到一种方法,通过垃圾回收来确定哪些JavaScript分配的对象被释放。请注意,我不试图跟踪"泄漏。"泄漏是不被释放的对象。
在Firefox中,网络应用我偶尔会看到口吃(停止响应击键时间> 1秒);分析显示,在此期间,浏览器正在执行冗长的GC。在之前的几秒钟内,添加了大量内存(小块,不是一次全部)。当GC发生时,几乎所有内存都被释放。
我想弄清楚的是: 所有这些短命对象是什么?我很想知道他们的价值观,他们的类型,或者他们被分配给JS的地方。
Web应用程序在所有浏览器中展示了这些相同的分配模式(尽管只有Firefox似乎会遭受漫长的GC);所以我很乐意使用任何浏览器(Mac或Windows)来调试它。
我已经弄清楚如何使用Chrome浏览器的开发工具来查看泄露的对象,但正如我上面提到的,泄漏不是我关心的问题。我无法找到一种方法来查看分配了哪些对象然后被释放。
答案 0 :(得分:0)
GC只是生命周期的终点。最初有分配。
因此,您可以使用devtools'而不是试图找出收集的内容。分配录音。