我正在寻找一个工具来告诉我我的代码运行了多长时间。相当于在我的程序中每行代码之前和之后记录DateTime.Now
的东西,然后显示每行的两次之间的差异(在我的程序完成运行之后)。
例如,如果我有一个程序在其main中调用四个方法,我想知道(在运行此工具之后)每个方法运行多长时间,然后如果我进入每个方法,我'我想知道每条线路运行需要多长时间,等等。
这些工具是否存在?当然我更喜欢免费的,但如果存在的都是专业工具,那么请提及它们。
编辑:看来这些工具称为分析工具。谢谢,这肯定会帮助我进行搜索。不幸的是,我正在使用Visual Studio 2010 Professional,所以我相信Microsoft的性能分析工具已经不在我的掌握之中了。任何好的第三方分析工具?
答案 0 :(得分:4)
您可以使用 CLR Profiler for .NET Framework 4
CLR Profiler 包括许多 非常有用的分配观点 配置文件,包括直方图 分配的类型,分配和呼叫 图表,时间线显示的GC 各代人和由此产生的 之后托管堆的状态 集合和显示的调用树 每个方法的分配和组装 负荷。
甚至更多 profilers and tools can be found here ......
有关分析on the wikipedia
的更多信息答案 1 :(得分:3)
如果您使用VS附带的Profiler工具,它会很好地显示给您。只有一个缺点是,我认为它只有Ultimate。 :(
答案 2 :(得分:1)
您在寻找performance profiler吗?它告诉你每个函数需要多长时间。
答案 3 :(得分:0)
我喜欢dotTrace,这是由制作Resharper的人做的:dotTrace
答案 4 :(得分:0)
尝试Red Gate ANTS Performance Profiler。有一个免费试用版,如果你无法访问内置的VS2010分析器,它可以做得很好。