diff options
| author | Bond_009 <bond.009@outlook.com> | 2022-04-09 20:17:07 +0200 |
|---|---|---|
| committer | Bond_009 <bond.009@outlook.com> | 2022-04-09 20:17:07 +0200 |
| commit | 5012c093687c629ffdf26918ed712c8469c824eb (patch) | |
| tree | da1f3b47e5d0b0f18195370a30b081ad14345090 | |
| parent | e4af11d53adfeeda06852a1f834b1127b475688d (diff) | |
Optimize GetMD5 function
| Method | Mean | Error | StdDev | Gen 0 | Allocated |
|----------------------------- |---------:|--------:|--------:|-------:|----------:|
| Old | 795.1 ns | 5.90 ns | 4.61 ns | 0.0029 | 312 B |
| HashDataInsteadOfComputeHash | 396.1 ns | 1.36 ns | 1.13 ns | 0.0014 | 152 B |
| StackallocedDestination | 395.8 ns | 1.80 ns | 1.60 ns | 0.0014 | 152 B |
| RentBuffer | 498.8 ns | 3.35 ns | 2.97 ns | - | 40 B |
Tested multiple possible speedups, in the end the simplest of them all won
| -rw-r--r-- | MediaBrowser.Common/Extensions/BaseExtensions.cs | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/MediaBrowser.Common/Extensions/BaseExtensions.cs b/MediaBrowser.Common/Extensions/BaseExtensions.cs index 08964420e..e3775021e 100644 --- a/MediaBrowser.Common/Extensions/BaseExtensions.cs +++ b/MediaBrowser.Common/Extensions/BaseExtensions.cs @@ -31,11 +31,7 @@ namespace MediaBrowser.Common.Extensions public static Guid GetMD5(this string str) { #pragma warning disable CA5351 - using (var provider = MD5.Create()) - { - return new Guid(provider.ComputeHash(Encoding.Unicode.GetBytes(str))); - } - + return new Guid(MD5.HashData(Encoding.Unicode.GetBytes(str))); #pragma warning restore CA5351 } } |
