-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Processing dotnet/runtime#117427 (comment) command:
Command
-amd
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
BenchmarkSwitcher.FromAssembly(typeof(Program).Assembly).Run(args);
public class StringDictionaryDefault
{
private static readonly Dictionary<string, int> StringDictionary = new ()
{
{ "DOTNET_ThreadPool_UnfairSemaphoreSpinLimit" + 1, 1 },
{ "Hello World" + 2, 2 },
{ "aa" + 3, 3 }
};
[Benchmark] public int LongKey() => StringDictionary["DOTNET_ThreadPool_UnfairSemaphoreSpinLimit1"];
[Benchmark] public int MediumKey() => StringDictionary["Hello World2"];
[Benchmark] public int ShortKey() => StringDictionary["aa3"];
}
public class StringDictionaryIgnoreCase
{
private static readonly Dictionary<string, int> StringDictionary = new(StringComparer.OrdinalIgnoreCase)
{
{ "DOTNET_ThreadPool_UnfairSemaphoreSpinLimit" + 1, 1 },
{ "Hello World" + 2, 2 },
{ "aa" + 3, 3 }
};
[Benchmark] public int LongKey_IgnoreCase() => StringDictionary["DOTNET_ThreadPool_UnfairSemaphoreSpinLimit1"];
[Benchmark] public int MediumKey_IgnoreCase() => StringDictionary["Hello World2"];
[Benchmark] public int ShortKey_IgnoreCase() => StringDictionary["aa3"];
}
</details>
(*EgorBot will reply in this issue*)
Metadata
Metadata
Assignees
Labels
No labels