You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.4 KiB
C#

using BenchmarkDotNet.Configs;
using BenchmarkDotNet.Running;
namespace BenchMarkDotnetStudy.BenchmarkStudy
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Benchmark 测试!");
if (args != null && args?.Length > 0)
{
Console.WriteLine($"有{args.Length}个命令行参数, 分别为[{string.Join(" | ", args)}]");
}
else
{
Console.WriteLine("无命令行参数");
}
//var summary = BenchmarkRunner.Run<CounterTest3>();
BenchmarkSwitcher.FromAssembly(typeof(Program).Assembly).Run(args, new DebugInProcessConfig());
// MockArgsRun();
}
public static void MockArgsRun()
{
//模拟命令行参数:参数和参数值分两个参数写
var mockArgs = new string[] { "--filter", "*CounterTest3.Thread2_Test" };
//显示模拟参数
Console.WriteLine($"有{mockArgs.Length}个模拟命令行参数, 分别为[{string.Join(" | ", mockArgs)}]");
//执行方式一
var summary = BenchmarkRunner.Run<CounterTest3>(null, mockArgs);
//执行方式二:推荐
var summaries = BenchmarkSwitcher.FromAssembly(typeof(Program).Assembly).Run(mockArgs, new DebugInProcessConfig());
}
}
}