Via John Wiseman, a good introduction to garbage collection from Microsoft, with a focus on how .NET's garbage collector works.
Summary: The .NET garbage collector provides a high-speed allocation service with good use of memory and no long-term fragmentation problems. This article explains how garbage collectors work, then goes on to discuss some of the performance problems that might be encountered in a garbage-collected environment. (10 printed pages)
In order to understand how to make good use of the garbage collector and what performance problems you might run into when running in a garbage-collected environment, it's important to understand the basics of how garbage collectors work and how those inner workings affect running programs.
This article is broken down into two parts: First I will discuss the nature of the common language runtime (CLR)'s garbage collector in general terms using a simplified model, and then I will discuss some performance implications of that structure.
Hmm, there's also a separate two part article on garbage collection in .NET: Garbage Collection: Automatic Memory Management in the Microsoft .NET Framework, and part two.
Feel free to post a comment below. Please see my comment policy.
Formatting Rules (No HTML):