有一个名为PassMark AppTimer的免费工具。但我认为它不太适合我的需求。
Windows 提供了一个名为 的工具xperf
,有没有办法用它来测试/基准测试应用程序启动时间?
有一个名为PassMark AppTimer的免费工具。但我认为它不太适合我的需求。
Windows 提供了一个名为 的工具xperf
,有没有办法用它来测试/基准测试应用程序启动时间?
如果我正在帮助开发一个应用程序,并且它在启动(或任何其他阶段)时变得太慢,我就这样做。
普遍的看法是,测量各种例程的性能对于发现性能问题是必要的。
我走另一条路——我找出最大的问题(因为它们的缓慢暴露了它们),然后我可以粗略估计它们需要多少时间,如果我愿意的话。这是它如何工作的示例。
我发现的类型是,例如 1)从资源中获取和转换字符串,这些字符串在资源中以便它们可以被国际化,但实际上并不需要被国际化,或者 2)创建和删除(以及序列化) 在设置 UI 控件的过程中没有真正原因的深层数据结构。
发现的东西几乎永远不会是您可能猜到的,因此猜测是错误的。看看这个过程告诉你什么。
有趣的是,这个问题几乎从来都不是分析器可以轻易告诉你的那种事情。问题几乎总是一些看似无辜的函数或方法调用,在调用堆栈的中间某处,它只会引起你的注意,因为 1)它出现了很多,2)通过查看它在做什么以及为什么,你可以看到它可以在没有的情况下完成。摆脱它可以节省与在堆栈上一样多的时间。