or subscribe with
Join 19,300+ readers for one email each week.
Digests » 330
this week's favorite
How to use System.IO.Pipelines and System.Threading.Channels APIs to speed up processing.
C# 8 will ship soon with .Net Core 5, and one of the most exciting features are Source Generators. These introduce the ability to add code during compilation, e.g. add a strongly typed accessor library for CSV files or automatically implement a REST interface.
In this post, I want to show how performance optimisations do not always require extensive and complex code modifications. Sometimes, there is low hanging fruit that we can tackle for some quick performance wins. Let’s look at one such example.
Last week it finally happened, I saw my first memory leak in production - that I know of - and over time it was eating up all the memory. Throughout my career, I've been warned, and I've warned about these leaks and why it's so important to release unmanaged resources with the Dispose method. Yet, we still created a memory leak.
A good reminder. It's been this way for a half decade but I'm still bumping into folks who have never heard this. Moving forward, .NET 5 will be a unification of the .NET Framework you may have heard for years, and the new .NET Core I like talking about, PLUS great goodness, tools and libraries from Mono and Xamarin. It's one cross-platform .NET with a number greater than 4. Because 5 > 4, natch.