【发布时间】:2009-09-24 08:45:56
【问题描述】:
我有一个 wxPython 应用程序,它有许多工作线程、空闲事件周期和许多其他可以消耗 CPU 的事件处理代码,现在当应用程序不被交互时消耗大约 8-10% 的 CPU。
问题:
是否有工具可以判断我的应用程序的哪些部分/线程消耗最多的 CPU?如果没有这样的通用工具,我愿意知道您通常采用哪些方法来解决此类情况?例如禁用部分应用程序、跟踪等
编辑:可能是我的问题语言不明确,我不想知道我的代码中的哪个函数或代码块占用了大部分资源,因为我可以使用分析器。 我想知道的是当我运行我的应用程序时,我看到 cpu 使用率为 8-10%,现在有没有办法知道我的应用程序的哪些不同部分、线程正在使用这 10% 的 cpu? 基本上在那一刻我想知道代码的哪一部分正在运行?
【问题讨论】:
-
“语言歧义”不会改变下面的答案。使用分析器——不管是什么语言——看看时间在哪里。您希望获得“魔法”还是一些“秘密”工具?您拒绝的探查器答案有什么问题?
-
@S.Lott:因为我无法看到分析器如何更有效地或根本无法解决我的问题,而不是我只是打开跟踪几秒钟以查看正在发生的事情在那一刻运行,而不是说做分析,你能解释一下如何使用分析是这种情况,可能是解释要么会澄清你的疑问,要么很可能是我的