← Back to Roadmaps
Mastering Memory Management and Garbage Collection in .NET - Learning Roadmap | Nemorize
Loading roadmap...
Learning Topics
This roadmap covers the following topics:
✅ Memory Fundamentals
- ✅ Stack Allocation
- ⚪ Stack frame lifecycle
- ⚪ Stack limitations
- ✅ Stackalloc and Span<T>
- ✅ Heap Allocation
- ✅ Object header and layout
- ⚪ Small Object Heap (SOH)
- ⚪ Large Object Heap (LOH)
- ✅ Value vs Reference Types
- ⚪ Struct semantics
- ✅ Boxing and unboxing
- ⚪ Reference type overhead
✅ Garbage Collection Fundamentals
- ✅ Generational Model
- ⚪ Gen0 ephemeral collection
- ⚪ Promotion mechanics
- ⚪ Gen2 and full collections
- ✅ GC Roots and Tracing
- ⚪ Root types
- ⚪ Mark and sweep
- ⚪ Finalization pipeline
- ✅ Collection Triggers
- ⚪ Allocation threshold
- ⚪ Induced collections
- ⚪ Memory pressure signals
✅ GC Modes and Adaptive Behavior
- ✅ Workstation vs Server GC
- ⚪ Workstation GC
- ⚪ Server GC
- ⚪ Choosing the right mode
- ✅ Background and Concurrent GC
- ⚪ Background GC mechanics
- ⚪ Foreground vs background pauses
- ⚪ Non-concurrent workstation fallback
- ✅ DATAS
- ⚪ Allocation rate feedback
- ⚪ Latency vs throughput decisions
- ⚪ What DATAS doesn't change
✅ Retention Bugs in Managed Code
- ⚪ Event Handler Leaks
- ⚪ Strong references via delegates
- ⚪ Unsubscribe patterns
- ⚪ Static event anti-pattern
- ⚪ Cache and Collection Leaks
- ⚪ Unbounded static caches
- ⚪ Dictionary key retention
- ⚪ TimerQueue and callback leaks
- ✅ Diagnostic Techniques
- ⚪ Memory snapshots and diffs
- ⚪ Shortest root path analysis
- ⚪ GC event traces
✅ Modern Allocation Primitives
- ✅ Span<T> and ReadOnlySpan<T>
- ⚪ ref struct constraints
- ⚪ Slicing without allocation
- ⚪ stackalloc integration
- ✅ Memory<T> and ReadOnlyMemory<T>
- ⚪ Async method compatibility
- ⚪ MemoryManager<T> backing
- ⚪ Field storage and lifetime
- ✅ Safe vs Unsafe Patterns
- ⚪ Span escape analysis
- ⚪ Use-after-free prevention
- ⚪ Unsafe buffer access
✅ Buffer Ownership and Pooling
- ✅ ArrayPool<T>
- ⚪ Rent and return discipline
- ⚪ Shared vs custom pools
- ⚪ Array size bucketing
- ✅ IBufferWriter<T> and Writers
- ⚪ IBufferWriter<T> contract
- ⚪ ArrayBufferWriter<T>
- ⚪ Custom writer implementations
- ✅ ReadOnlySequence<T>
- ⚪ Segment-based enumeration
- ⚪ SequenceReader<T>
- ⚪ Position and slicing
Sign in to share your feedback and rate this roadmap
Loading comments...
Community Feedback
Share your thoughts and rate this roadmap