Performance Improvements in .NET 5
Explore many performance improvements, big and small, that have gone into the .NET 5 runtime and core libraries to make apps and services leaner and faster.
.NET 10 is now available: the most productive, modern, secure, intelligent, and performant release of .NET yet.
Explore many performance improvements, big and small, that have gone into the .NET 5 runtime and core libraries to make apps and services leaner and faster.
For .NET 5, we’ve invested in some significant improvements to the Regex engine. On many of the expressions we’ve tried, these changes routinely result in throughput improvements of 3-6x, and in some cases, much more. In this post, I’ll walk through some of the myriad of changes that have gone into System.Text.RegularExpressions in .NET 5.
The async/await feature in C# has revolutionized how developers targeting .NET write asynchronous code. Sprinkle some and around, change some return types to be tasks, and badda bing badda boom, you've got an asynchronous implementation. In theory. In practice, obviously I've exaggerated the ease with which a codebase can be made fully asynchron...
.NET added / to the languages and libraries over seven years ago. In that time, it's caught on like wildfire, not only across the .NET ecosystem, but also being replicated in a myriad of other languages and frameworks. It's also seen a ton of improvements in .NET, in terms of additional language constructs that utilize asynchrony, APIs offering asy...
"Producer/consumer" problems are everywhere, in all facets of our lives. A line cook at a fast food restaurant, slicing tomatoes that are handed off to another cook to assemble a burger, which is handed off to a register worker to fulfill your order, which you happily gobble down. Postal drivers delivering mail all along their routes, and you eithe...
Take a tour through some of the many improvements, big and small, that have gone into the .NET Core 3.0 runtime and core libraries to make apps and services leaner and faster.
The .NET Framework 4 saw the introduction of the namespace, and with it the class. This type and the derived have long since become a staple of .NET programming, key aspects of the asynchronous programming model introduced with C# 5 and its / keywords. In this post, I'll cover the newer / types, which were introduced to help improve asynchrono...
Back before .NET Core 2.0 shipped, I wrote a post highlighting various performance improvements in .NET Core 2.0 when compared with .NET Core 1.1 and the .NET Framework. As .NET Core 2.1 is in its final stages of being released, I thought it would be a good time to have some fun and take a tour through some of the myriad of performance improvements...
Update (2017/06/12): Added BenchmarkDotNet blog post link. There are many exciting aspects to .NET Core (open source, cross platform, x-copy deployable, etc.) that have been covered in posts on this blog before. To me, though, one of the most exciting aspects of .NET Core is performance. There's been a lot of discussion about the significant adv...
There are several nice API-level enhancements to the Task Parallel Library in .NET 4.6, which you can grab a preview of as part of the Visual Studio 2015 CTP. Task.From* .NET 4.5 had a Task.FromResult method. This method makes it quick and easy to manufacture a new Task for a known result value, and is particularly useful when implementing a Tas...