解决方法
我已经下载并尝试了AQtime。它似乎是全面的,但它不是一个易于使用的工具,对于个人程序员(即$ 600美国)是非常昂贵的。我喜欢这样一个事实:它是非侵入性的(没有改变你的代码),并且它可以进行逐行分析,直到我发现因为它是一个仪器分析器,它可能会导致不正确的优化,如: Why is CharInSet faster than Case statement?@H_301_4@
我尝试了一个ProDelphi的演示,价格便宜得多(约80美元),但对我来说太笨了 – 我根本不喜欢用户界面,而且是侵入式的 – 更改代码以添加仪器,你必须小心。@H_301_4@
我用Delphi 4使用GpProfile多年。我爱它。它也是侵略性的,但它的工作得很好,我学会相信它,从来没有给我10年的问题。但是当我升级到Delphi 2009时,我并没有认为最好尝试使用它,因为它没有被升级,而且由GP承认,不会在没有修改的情况下工作。我希望你不能用Delphi 2006来使用它。@H_301_4@
ProDelphi和GpProfile将仅在过程级别进行配置。如果你想做单行(我有时必须),你必须调用每行的PROC1,PROC2,PROC3,并在每个PROC中放一行。这样做有点麻烦,但它给了我很好的结果(至少我对GpProfile的结果感到满意)。@H_301_4@
我在CharInSet问题中接受的答案是:“采样分析器定期检查cpu的位置通常更适合测量代码时间。”后来的answer给了Eric Grange的Delphi自由采样分析器,现在支持Delphi 2009。我还没有尝试过,但是我听说过很多东西,下一个我将尝试。@H_301_4@
顺便说一下,您可以通过不购买AQtime来节省您的600美元,而不是使用它来将Delphi 2006升级到Delphi 2009。您的稳定性,速度和额外功能(特别是Unicode)将是值得的。参见:What are major incentives to upgrade to D2009 (Unicode excluded)?@H_301_4@
此外,AQtime还没有集成到Delphi 2009中。@H_301_4@
另一个免费的,源自我发现,但还没有尝试过的是TProfiler.如果有人尝试过,我想知道他们的想法。@H_301_4@
注意:Addateum我之后添加到question 291631似乎可能是答案。见Andre’s open source program: asmprofiler@H_301_4@
2010年2月的跟进。我有点子弹,并购买了AQTime。几个月前,他们终于将其整合到Delphi 2009中,这是我使用的(但是他们还需要做Delphi 2010)。源代码行的查看及其各自的时间和次数对我来说是非常宝贵的,而AQTime则是一个非常好的工作。@H_301_4@