Chrome 在分析器中查看分配信息时出错

Posted

技术标签:

【中文标题】Chrome 在分析器中查看分配信息时出错【英文标题】:Chrome gives error when viewing allocation information in profiler 【发布时间】:2021-05-14 00:38:24 【问题描述】:

我正在尝试调试并找出我的程序中发生重大分配的位置。

我打开了 Chrome 开发者工具,导航到内存,然后点击“开始记录堆配置文件”。

五秒钟后我停止它,然后选择右侧的下拉菜单并点击Allocation

点击后,没有显示分配信息,而是在我的 Chrome 控制台中出现以下错误:

An error occurred when a call to method 'allocationTracesTops' was requested
TypeError: Cannot read property 'serializeTraceTops' of undefined
    at E.allocationTracesTops (devtools://devtools/bundled/heap_snapshot_worker/heap_snapshot_worker.js:1:18630)
    at HeapSnapshotWorkerDispatcher.dispatchMessage (devtools://devtools/bundled/heap_snapshot_worker/heap_snapshot_worker.js:1:47490)

我在 Windows 10 上使用最新版本的 Chrome,并且禁用了所有扩展程序。这是 Chrome 的错误吗?有没有更好的方法来确定代码的哪些部分正在执行分配,以及衡量它们对 GC 的影响?

【问题讨论】:

【参考方案1】:

该功能需要启用“记录分配的堆栈跟踪”。在 86.0.4240.75 之后的版本中还有一个回归,因此即使启用了堆栈跟踪,视图也始终为空。

【讨论】:

以上是关于Chrome 在分析器中查看分配信息时出错的主要内容,如果未能解决你的问题,请参考以下文章

尝试将字符串分配给结构内的字符串变量时出错

如何导出 rStudio 分析详细信息

.NET 分配分析

Chrome开发者模式报错Failed to load resource问题分析

我可以查看 Chrome 分析数据的火焰图吗?

如何在 Chrome 的性能分析器中调试匿名 JavaScript 函数?