site image
Andrew Lock avatar

Andrew Lock

Performance
  1. Loading...
  2. Sponsored by Dometrain Courses—Get 30% off Dometrain Pro with code ANDREW30 and access the best courses for .NET Developers

    30% off with code ANDREW30 on Dometrain Pro
  3. ASP.NET Core in Action, Third Edition

    My new book ASP.NET Core in Action, Third Edition is available now! It supports .NET 7.0, and is available as an eBook or paperback.

  4. Banner image for New features in Git 2.54: easier rebasing, hooks, and statistics

    New features in Git 2.54: easier rebasing, hooks, and statistics

    In this post I show some of the new features in Git 2.54 including simple rebases with git history, config-based hooks, and stats with git repo structure…

     in  C#Performance
  5. Banner image for Removing byte[] allocations in .NET Framework using ReadOnlySpan<T>

    Removing byte[] allocations in .NET Framework using ReadOnlySpan<T>

    In this post I describe how to remove static byte[] allocations, even on .NET Framework, by using Span<T>, look at the associated IL, and discuss the risks…

     in  C#Performance
  6. Banner image for Making foreach on an IEnumerable allocation-free using reflection and dynamic methods

    Making foreach on an IEnumerable allocation-free using reflection and dynamic methods

    In this post I describe why foreach sometimes allocates, and show how you can use DynamicMethod and Reflection.Emit to go allocation-free…

     in  Performance.NET CoreDatadog
  7. Banner image for Creating a .NET CLR profiler using C# and NativeAOT with Silhouette

    Creating a .NET CLR profiler using C# and NativeAOT with Silhouette

    In this post I look at how to create a simple .NET profiler. But instead of using C++, the profiler uses C# and NativeAOT with the Silhouette library…

     in  .NET CoreC#PerformanceNative AOT
  8. Banner image for Easier reflection with [UnsafeAccessorType] in .NET 10

    Easier reflection with [UnsafeAccessorType] in .NET 10

    Exploring the .NET 10 preview - Part 9

    In this post I show how to work with [UnsafeAccessor] to do 'easier' reflection and how to use .NET 10's [UnsafeAccessorType] with types you can't reference…

     in  .NET 10Performance
  9. Banner image for Using default interface methods for performance gains in IHeaderDictionary

    Using default interface methods for performance gains in IHeaderDictionary

    In this post I look at an example of how default interfaces were used to improve the performance of IHeaderDictionary…

Andrew Lock | .Net Escapades
Want an email when
there's new posts?