海南建设交易中心网站,wordpress 面向对象,网站邮箱建设,网络服务大厅BenchmarkDotNet是一个用MIT协议开源的C#程序性能测试的一个库#xff0c;非常简单易用。 用法 安装NuGet包#xff0c;BenchmarkDotNet在需要做性能测试的方法前加上属性[Benchmark]。在Main函数调用性能测试var summary BenchmarkRunner.RunMd5VsSha256();。 工作… BenchmarkDotNet是一个用MIT协议开源的C#程序性能测试的一个库非常简单易用。 用法 安装NuGet包BenchmarkDotNet在需要做性能测试的方法前加上属性[Benchmark]。在Main函数调用性能测试var summary BenchmarkRunner.RunMd5VsSha256();。 工作原理 BenchmarkDotNet为每一个要做性能测试的方法生成了一个单独的项目放在程序的输出目录下用Release模式编译并且运行多次来统计性能测试结果。每次运行都包含以下几个步骤。Pilot 决定运行几次。IdleWarmup IdleTarget评估BenchmarkDotNet这个工具带来的额外开销。MainWarmup测试热身。MainTarget测试。Result测试结果减去BenchmarkDotNet带来的额外开销。 生成测试报告。有各种格式包括html格式markdown格式缺省风格github风格stackoverflow风格txt格式csv格式。比如如下就是我运行示例代码后得到的github风格的输出。 1234567BenchmarkDotNetv0.9.2.0OSMicrosoft Windows NT 6.1.7601 Service Pack 1ProcessorIntel(R) Core(TM) i7-4600U CPU 2.10GHz, ProcessorCount4Frequency2630693 ticks, Resolution380.1280 nsHostCLRMS.NET 4.0.30319.42000, Arch32-bit RELEASETypeMd5VsSha256 ModeThroughput MethodMedianStdDevMd521.8816 us0.6091 usSha256123.4171 us6.7846 us 可以在程序的输出目录下的log文件中看到上面所说的每个过程的详细信息。 其他配置 BenchmarkDotNet还有很多可以配置的地方可以参见主页的介绍。 原文地址http://fresky.github.io/2016/03/06/use-benchmarkdotnet-for-csharp-benchmark/ .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注