Xia*_*ian 14
您所描述的内容称为性能分析.您可以使用许多程序来执行此操作,例如Jetbrains profiler或Ants profiler,尽管大多数程序会在测量其性能的过程中降低您的应用程序速度.
要手动滚动自己的性能分析,可以使用System.Diagnostics.Stopwatch和一个简单的Console.WriteLine,就像您描述的那样.
还要记住,C#JIT编译器根据调用的类型和频率优化代码,因此请使用不同大小和方法的循环,例如递归调用,以了解哪种方法效果最佳.
Eri*_*ver 11
来自RedGate的ANTS Profiler是一个非常好的性能分析器.来自JetBrains的dotTrace Profiler也很棒.通过这些工具,您可以查看可以在每条线上钻取的性能指标.
Scree拍摄的ANTS Profiler: ANTS http://www.red-gate.com/products/ants_profiler/images/app/timeline_calltree3.gif
如果您想确保特定方法在单元测试期间保持在特定的性能阈值内,我将使用Stopwatch
该类在循环中多次监视方法的执行时间并计算平均值,然后计算Assert
结果.