BenchmarkDotNet=v0.13.2, OS=Windows 10 (10.0.19045.2130)
Intel Core i7-8550U CPU 1.80GHz (Kaby Lake R), 1 CPU, 8 logical and 4 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), X64 RyuJIT AVX2
DefaultJob : .NET 7.0.0 (7.0.22.51805), X64 RyuJIT AVX2
Method | Mean | Error | StdDev |
Alg1Ex_NoExThrown | 19.497 ns | 0.0891 ns | 0.0789 ns |
Alg1Ex_NoExThrown_NoInlining | 10.405 ns | 0.0420 ns | 0.0350 ns |
Alg2Ex_NoExThrown | 11.132 ns | 0.0272 ns | 0.0227 ns |
Alg1Ex_ThrowsOne | 6,293.476 ns | 99.8963 ns | 77.9925 ns |
Alg2Ex_ThrowsAll | 18,987.498 ns | 184.0251 ns | 172.1372 ns |
TryAlg1_NotNull | 13.012 ns | 0.1088 ns | 0.0964 ns |
TryAlg1_Variant2_NotNull | 11.739 ns | 0.0556 ns | 0.0521 ns |
TryAlg1_Null | 6.517 ns | 0.0236 ns | 0.0197 ns |
TryAlg1_Variant2_Null | 6.702 ns | 0.0220 ns | 0.0195 ns |
Alg1Nullable_NotNull | 31.256 ns | 0.1528 ns | 0.1429 ns |
Alg1Nullable_NotNull_NoInlining | 31.352 ns | 0.1202 ns | 0.1065 ns |
Alg2Nullable_NotNull | 27.466 ns | 0.0847 ns | 0.0707 ns |
Alg1Nullable_AllNull | 13.021 ns | 0.0418 ns | 0.0349 ns |
Alg2Nullable_AllNull | 10.342 ns | 0.0491 ns | 0.0410 ns |