3

我正在尝试使用 dartium 开发工具中的 Observatory 选项卡来查找我的框架中的内存泄漏。我在这里做了一个测试程序,应该可以在 js 或 dart 中查看。我的目标是找出对Massive对象的引用在哪里保留,这些对象只是 a 的包装器,其中List<double>包含一百万个doubles。如果我单击New Client我会在右侧看到一个新的客户端视图,如果我生成一堆Massive对象并刷新观察工具,我会看到double现在占用了大部分应用程序内存使用。如果我然后删除Massive对象并等待 5 秒钟让框架远程垃圾收集运行,然后刷新观察站选项卡,doubles 仍然占用相同数量的内存,即使它们应该已经被 GC(我单击 observatoy 选项卡上的 GC 按钮,我假设强制 GC 运行。)如果我Massive最终继续在应用程序中创建和删除对象页面崩溃,通常是在Massive创建了大约 28 个对象之后。我的问题是找出如何使用这些工具来找出Massive对象仍然有引用的位置。是否可以在开发工具中找到对对象的引用?

更新:

我已经修复了我链接的测试应用程序中的内存泄漏并在上面进行了描述,因此按照上面的说明操作不会导致重新创建内存泄漏。

4

1 回答 1

3

我目前正在自己​​调查内存泄漏。天文台中缺少的是从根到泄漏对象的链条。不过,我不确定是否已经存在问题。随意打开一个新的。

于 2014-05-12T21:09:30.950 回答