使用英语阅读

通过


根据 -o 指定的输出文件,以表格形式写入包含以下信息的文本文件:

  • 分配编号

  • 分配大小 (KB)

  • 输出编号

  • 输出大小 (KB)

  • 重新分配编号

  • 范围大小 (KB)

  • 输出范围大小 (KB)

  • 堆句柄

-a heap [-pid <processId>] [-stacks] [-frames] [-images] [-range T1 T2] [-lifetime T1 T2] [-size S1 S2] [-cullframes Frame1 Frame2 ... FrameN] [-requireframes Frame1 Frame2 ... FrameN] [-cullLists cullfuncs.txt] [-top <n>] [-totals]

选项

-pid<processId>
仅显示指定进程标识符的统计信息。 如果未指定,则显示所有进程的统计信息。

-stacks[s [o|oc|t|tc|rc]]
显示按堆栈聚合的分配。 这是默认行为。

按未完成大小 (so)、未完成计数 (soc)、总大小 (st)、重新分配计数 (src) 和总数计数 (stc) 排序。 默认值为 so。

-frames[s [o|oc|t|tc|rc]]
类似于 -stacks,但聚合按顶层堆栈帧而不是按整个堆栈进行。

-图像
类似于 -stacks-frames,但聚合按顶层堆栈帧的图像名称进行。

-rangeT1 T2
使用时间从 T1 到 T2 的事件数据,均以微秒为单位。

-lifetimeT1 T2
仅包括生命周期(以微秒为单位)大于或等于 T1 且小于 T2 的分配。

-sizeS1 S2
仅包括大小(以字节为单位)大于或等于 S1 且小于 S2 的分配。

-cullframesFrame1 Frame2 ...FrameN
从报告中删除与任何指定帧匹配的任何顶层堆栈帧。 参数格式为 [image!][symbol]。 名称不区分大小写。

-requireframesFrame1 Frame2 ...FrameN
要求每个堆栈至少有一个与至少一个指定帧匹配的帧。 此测试发生在使用 -cullframes 的任何显式帧剔除之前。

-cullLists<fileName>
指定文件中的帧将从结果中排除。 如果堆栈不包含此类帧,则排除该堆栈。 帧的格式与 -cullFrames 的格式相同。 名称不区分大小写。

-top<n>
限制显示的分配数。

-总数
仅显示分配事件的总数。

注解

由于执行大量排序和匹配,此操作可能需要几分钟才能完成大型跟踪。

有关如何捕获堆数据的信息,请参阅启用堆数据捕获

Xperf 操作

时间和时间戳格式