Ah, it was a slow evening, so I decided to liven it up by doing some technical reading.
I found a facinating two part article giving a technical description of how .NET's garbage collector works.
msdn.microsoft.com/msdnmag/issues/1100/GCI/default.aspx
msdn.microsoft.com/msdnmag/issues/1200/GCI2/default.aspx
Managed memory gives a programmer a relief of worrying about forgetting to free an ununsed resource and attempting to use an already freed resource. The drawback is the performance overhead involved with maintaining the managed memory. Here's a quote from the article that discusses a goal for the .NET garbage collector:
A bold statement indeed!
I found a facinating two part article giving a technical description of how .NET's garbage collector works.
msdn.microsoft.com/msdnmag/issues/1100/GCI/default.aspx
msdn.microsoft.com/msdnmag/issues/1200/GCI2/default.aspx
Managed memory gives a programmer a relief of worrying about forgetting to free an ununsed resource and attempting to use an already freed resource. The drawback is the performance overhead involved with maintaining the managed memory. Here's a quote from the article that discusses a goal for the .NET garbage collector:
Microsoft's performance tests show that managed heap allocations are faster than standard allocations performed by the Win32 HeapAlloc function. These tests also show that it takes less than 1 millisecond on a 200Mhz Pentium to perform a full GC of generation 0. It is Microsoft's goal to make GCs take no more time than an ordinary page fault.
A bold statement indeed!