Overview
Explore techniques for improving C# code performance by reducing memory allocations in this one-hour conference talk. Learn about using structs efficiently, understand the differences between classes and structs, and discover the benefits of the Span runtime type for working with memory slices. Examine recent C# features that enable allocation-free coding, including ref returns, readonly structs, and ref structs. Dive into practical examples using System.Text.Json and micro-benchmarks to measure performance improvements. Gain insights on when to apply these techniques and when to avoid them, ensuring optimal code performance without sacrificing readability or maintainability.
Syllabus
Introduction
Garbage Collection
LowHanging Fruit
Reference Types and Value Types
Closures and Iterators
Value Types
Ref Returns
Ref ReadOnly
Method Argument Modifier
ReadOnly struct
Ref structs
SystemTextJason
Micro Benchmarks
Summary
Taught by
NDC Conferences