分析配置对话框
使用此对话框创建、编辑、调整或删除 分析配置。
常用选项
名称 | 在此字段中,指定分析配置的名称。 该名称将帮助您在稍后选择编辑或调用时识别已创建的配置。 |
手动控制分析 | 允许您通过分析器控件手动控制分析。 例如,要获取快照,您需要点击 获取快照 按钮 |
从开始处收集分析数据 | 从开始处收集分析数据 :如果选中,dotTrace 将在启动后立即开始收集分析数据。 否则,dotTrace 仅在您点击 开始录制 后,才会开始收集数据,位于 dotTrace Profiler工具窗口中。 |
通过 API 控制分析 | 允许您直接从被分析应用程序的代码中控制分析。 例如,在代码的确切位置获取快照。 在 dotTrace 文档中了解更多关于使用 API 的信息。 |
分析子进程 | 如果选中,dotTrace 将不仅分析主应用程序进程,还会分析其运行的进程。 |
工具栏
分析配置的树视图具有一个工具栏,可帮助您管理 解决方案 中可用的配置以及调整默认配置模板。
条目 | 快捷方式 | 描述 |
|---|---|---|
Alt+Insert | 创建一个分析配置。 | |
Alt+Delete | 删除选定的分析配置。 | |
Ctrl+D | 创建选定分析配置的副本。 | |
| Alt+Up/ Alt+Down | 在列表中上下移动选定的分析配置。 列表中配置的顺序定义了选择分析配置时配置出现的顺序。 |
分析类型:采样
抽样 分析类型提供了精确的时间测量,但不会测量方法调用的次数。 抽样 推荐用于大多数性能分析场景。 当您首次查找应用程序中的性能问题时,这是理想的选择。
时间度量 | 此选项定义了 dotTrace 必须如何计算调用时间。 欲了解更多信息,请参阅 https://www.jetbrains.com/zh-cn/help/profiler/Profiling_Guidelines__Setting_the_Right_Meter_Kind.html。 通常,这是在 dotTrace 应该计算线程未工作时的时间还是不计算之间的选择。 更具体地说,有以下选项:
|
分析类型:跟踪
跟踪 性能分析类型提供准确的调用次数测量。 请注意,由于性能分析开销,时间测量可能不准确。 仅当采样数据不足时才使用此性能分析类型。 例如,用于分析算法复杂性(当调用次数信息比调用时间值更有价值时)。
时间度量 | 此选项定义了 dotTrace 必须如何计算调用时间。 有关更多信息,请参阅 https://www.jetbrains.com/zh-cn/help/profiler/Profiling_Guidelines__Setting_the_Right_Meter_Kind.html。 通常,这是在 dotTrace 应该计算线程未工作时的时间还是不计算之间的选择。 更具体地说,有以下选项:
|
启用内联 | 如果您希望 dotTrace 关闭 JIT 内联并获取与应用程序源代码结构非常相似的调用堆栈,请清除此选项。 |
高准确性 | 如果选中,dotTrace 将通过采集更多时间样本来考虑分析器本身所花费的时间。 |
分析类型:逐行
在 逐行 性能分析期间,每行代码都会被测量,由于性能分析器的巨大开销,调用时间值不准确。 仅用于高级场景。 例如,当您已经知道哪个函数导致问题并希望分析其每一行时。
时间度量 | 此选项定义了 dotTrace 必须如何计算调用时间。 有关更多信息,请参见 https://www.jetbrains.com/zh-cn/help/profiler/Profiling_Guidelines__Setting_the_Right_Meter_Kind.html。 通常,这是在 dotTrace 应该计算线程未工作时的时间还是不计算之间的选择。 更具体地说,有以下选项:
|
启用内联 | 如果您希望 dotTrace 关闭 JIT 内联并获取与应用程序源代码结构非常相似的调用堆栈,请清除此选项。 |
高准确性 | 如果选中,dotTrace 将通过采集更多时间样本来考虑分析器本身所花费的时间。 |
分析类型:时间线
在 时间轴 分析会话期间,dotTrace 收集有关线程状态、应用程序事件和其他多线程数据的时间数据。 我们建议在大多数情况下使用此分析类型。 特别是用于分析多线程应用程序。 例如,使用它来确定 UI 卡顿、过多垃圾回收、不均匀的工作负载分配、I/O 不足等问题的原因。
收集原生分配 | 如果选中,dotTrace 将收集被分析应用程序在本机(非托管)堆中执行的所有内存分配信息。 |
收集 TPL 事件 | 如果选中,分析性能可能会受到影响,但 dotTrace 将收集任务并行库(TPL)数据。 如果清除,将不会在 如果您的应用程序不使用多任务处理或您不需要此信息,请清除此选项。 |
收集调试输出 | 如果选中,dotTrace 将收集被分析应用程序发送到 调试输出的所有消息的信息。 |
分析类型:时间线(Mono)
您只能使用时间线分析类型分析 Mono 应用程序。 为了区分 .NET Framework 应用程序的分析类型,存在一个单独的 时间线(Mono) 分析类型。
收集原生分配 | 如果选中,dotTrace 将收集被分析应用程序在本机(非托管)堆中执行的所有内存分配信息。 |
收集 TPL 事件 | 如果选中,分析性能可能会受到影响,但 dotTrace 将收集任务并行库(TPL)数据。 如果清除,将不会在 如果您的应用程序不使用多任务处理或您不需要此信息,请清除此选项。 |
收集调试输出 | 如果选中,dotTrace 将收集被分析应用程序发送到 调试输出的所有消息的信息。 |
分析类型:时间线(Unity)
您只能使用时间线分析类型分析 Unity 应用程序。 为了区分 .NET Framework 应用程序的分析类型,存在一个单独的 时间线(Unity) 分析类型。
收集原生分配 | 如果选中,dotTrace 将收集被分析应用程序在本机(非托管)堆中执行的所有内存分配信息。 |
收集 TPL 事件 | 如果选中,分析性能可能会受到影响,但 dotTrace 将收集任务并行库(TPL)数据。 如果清除,将不会在 如果您的应用程序不使用多任务处理或您不需要此信息,请清除此选项。 |
收集调试输出 | 如果选中,dotTrace 将收集被分析应用程序发送到 调试输出的所有消息的信息。 |