Skip Navigation

Bob Davidson

Developer / Blend Interactive


I am a Web Developer of various disciplines, focusing primarily on C# / ASP.NET. I spend most of my time working on CMS-based websites, though work occasionally in NodeJS/Livescript, PHP, and if pressed, Coldfusion. I’m a fan of Episerver, have a minor fascination with monadic parsers, and am still getting the hang of F#.


Pipelines and Readonly Ref Structs

A brief tour and high-level overview of some of the new C# 7.2 language features and libraries to enable higher performance I/O in .NET.

This would include a quick refresher on the .NET memory model, an introduction to the new reference semantics for value types in C#, a look at the new System.Memory and System.IO.Pipelines libraries, and putting them together for some possible low-level performance gains. Will round out the discussion with some code examples/demos. Clearly, this will be a pretty technical talk.

While it’s possible many developers may never never need to directly interact with any of these new features, it’s still important and interesting to see the low-level features that are available, and understand at some level how they may be improving the performance of even preexisting code. It’s also also worthwhile to have had an introduction in the case you find these things being used in the wild. Finally, in some cases, these features (such as new Pipelines API) may actually significantly simplify code, particularly around I/O.