dotMemory 最新变化

此页面详细介绍了 dotMemory 中的最新更新和变化。

JetBrains Rider 中重做的 Monitoring(监测)工具窗口 2025.2

Rider 中的 Monitoring(监测)工具窗口已经重做,提供更加直观和集成的分析体验。它现在包含 CPU 使用率、内存消耗和垃圾回收 (GC) 活动的交互式图表,让您一目了然地了解应用程序的运行时行为。

从工具窗口,您可以启动性能或内存分析会话,以在内置 dotTrace 和 dotMemory 分析器或独立的对应工具中进行更深入的分析。在 Windows 上,Monitoring(监测)工具还会自动检测性能瓶颈、UI 冻结和 GC 问题。在 dotTrace 中可以进一步调查图表上选择的检测到的问题和时间间隔。

了解详情

Visual Studio 中的快照分析 2025.1

dotMemory 现在已完全集成到 Microsoft Visual Studio 中。以前,您在 Visual Studio 中只能触发性能分析,必须切换到独立的 dotMemory 应用程序才能分析结果。现在,您可以在 IDE 中完成应用程序的性能分析和内存快照分析。

用户界面 2024.3

2024.3 更新引入了许多小型 UX/UI 改进,以及一些收尾工作,这些收尾工作使所有操作系统上的所有 dotMemory 版本都具有统一的外观。

对象实例的 Creation Stack Trace(创建堆栈跟踪)视图 2024.3

我们重新引入了 Creation Stack Trace(创建堆栈跟踪)视图,该视图此前在 UI 重新设计时被移除。此视图显示导致对象创建的函数调用堆栈,帮助您更轻松地找出内存问题的根本原因。

对象集的 Back Traces(反向跟踪)视图 2024.3

我们还重新实现了对象集的 Back Traces(反向跟踪)视图。视图中的倒置调用树显示了从创建特定对象集的函数开始,从下到上的调用链。

使用冰柱图直观显示支配项 2024.3

支配项树现在能够显示为冰柱图,显示支配项和保留对象的内存消耗。此功能适用于 Windows、Linux 和 macOS 上的独立版 dotMemory 和 JetBrains Rider 中的 dotMemory。

带有旭日图的 Call Tree(调用树)现已在所有操作系统上可用 2024.3

将 Call Tree(调用树)直观显示为旭日图的功能在版本 2024.2 中引入,现在可用于 Windows、Linux 和 macOS 上的独立版 dotMemory 和 JetBrains Rider 中的 dotMemory。

改进的实例搜索 2024.2

我们在 Instances(实例)视图中添加了新的筛选选项:

  • Search by string value(按字符串值搜索):在筛选器字段中输入任意字符串值,dotMemory 将高亮显示匹配的字符串。这有助于根据内容查找特定字符串实例。
  • 字符串值的正则表达式支持:使用正则表达式进行更高级的搜索。例如,^nAsso.{5,}ID$ 与 nAssociatedObjectID.nAssociatedObjectID 一致。
  • 按对象地址搜索:您还可以通过内存地址搜索对象实例。这适用于直接跟踪特定对象。

这些功能在独立版 dotMemory 和 JetBrains Rider 中的 dotMemory 中可用。

Linux 和 macOS 版 dotMemory 的改进 2024.2

Linux 和 macOS 版 dotMemory 获得了此前仅在 Windows 上可用的功能:

  • 自动内存检查:Linux 和 macOS 版 dotMemory 获得了 Inspections(检查)视图,此视图可以显示多个自动检测到的内存问题。
  • 跨工作区快照比较:现在,您可以比较来自不同分析会话的快照。

这些功能在独立版 dotMemory 和 JetBrains Rider 中的 dotMemory 中可用。

使用 Sunburst 图直观呈现 Call Tree(调用树)2024.2

现在,Call Tree(调用树)可以显示为 Sunburst(旭日)图,高亮显示分配最多内存的函数。这项功能在独立版 dotMemory(Linux 和 macOS)和 JetBrains Rider 中的 dotMemory(Windows、Linux 和 macOS)中可用。

对 MAUI 应用程序的支持

对 MAUI 应用程序的支持 2024.1

现在,您可以分析基于 MAUI 框架的应用程序。

目前,dotMemory 支持分析 Windows 上以 .NET 7.0+ 为目标的 WinUI 应用程序。

支持适用于独立 dotMemory 以及集成到 Rider 和 ReSharper 中的 dotMemory。

对 macOS 的改进支持 2024.1

  • 现在,dotMemory 的独立版本允许您指定应用程序包 (.app) 而不是可执行文件。
  • Rider 中的 dotMemory 可以分析 macOS 运行配置。支持以下目标框架:net7.0-macos、net8.0-macos。
dotMemory 中适用于 Linux 和 macOS 的新视图

dotMemory 中适用于 Linux 和 macOS 的新视图 2024.1

Linux 和 macOS 上的 dotMemory 独立版本更加接近其 Windows 对应版本,提供:

  • 用于分析对象集的 Similar Retention(类似保留)视图
  • 用于分析支配项对象的 Sunburst(旭日图)

对冻结对象堆的支持 2024.1

关于冻结对象堆中不可变对象的信息显示在时间线、 Heap Fragmentation(堆碎片)图和 Generations(生成)视图上。

Linux 和 macOS 上的独立版 dotMemory 2023.3 Beta

现在,您可以在 Linux 和 macOS 操作系统上运行独立版 dotMemory。

在 Linux 上分析进程转储 2023.3

dotMemory 现在允许您在 Linux 上作为常规快照导入和分析进程转储。请注意,Linux 版的 dotMemory 只能导入从 Linux 操作系统上运行的进程中收集的转储。

JetBrains Rider 中的快照分析 2023.2

2023.2 之前,您在 Rider 中使用 dotMemory 时只能进行内存分配分析。在 2023.2 中,您可以收集内存快照并在 Rider 中分析,就像在独立版本的 dotMemory 中一样。

  • 快照分析适用于 Windows、Linux 和 macOS。
  • 在 Windows 上,您还可以导入并分析进程转储。
  • 部分功能和视图不可用,例如自动快照检查和创建堆栈跟踪视图。