From 'dotnet run' to 'Hello World!'
summary
Typing dotnet run triggers the hosting API to assemble a DLL list, initialize ~68 runtime subsystems and spin up the GC, JIT, type loader and DAC/SOS debug surfaces before main executes. Live demos use PerfView and flame graphs to show CPU sampling and allocations; the GC core lives in 37,300 lines of code, and tiered compilation (added in .NET Core 2.1, default in 3.x) lets the JIT recompile hot methods asynchronously to speed startup then optimize hot paths.
AI-written summary · about
chapters (14)
- 0:00Start
- 4:54Demo
- 14:49Garbage Collection
- 15:45Data Access Component
- 19:24Generics
- 20:38Event Tracing and Profiling
- 21:56The Hosting Api
- 23:12App Domains
- 29:57Cpu Sampling
- 32:51Flame Graphs
- 43:02The Type System
- 44:39Jit Compilation
- 48:51Tiered Compilation
- 57:37Debug through the Runtime of Visual Studio
related talks
49mFrom 'dotnet run' to 'Hello World!'
53mSo you want to create your own .NET runtime?
01h 01mHidden gems in .NET Core 3
01h 00mUnveiling .NET Secrets with the World's Smallest C# Program
01h 02mSo you want to create your own .NET runtime?
01h 01mASP.NET Core Deep(er) Dive
50mDemystifying the Core of .NET Core
56m.NET 5: runtimes
