What is Garbage collection

What do you understand by the garbage collection? Explain the difference between garbage collections in .NET 4.0 and  its earlier versions.

E

Expert

Verified

Garbage collection avoids memory leaks during program execution. Garbage collector is a low-priority method that accomplishes the deallocation and allocation of memory for the application. It examines for the unreferenced objects and variables. If Garbage Collector (GC) discovers any object that is not used by the application at present, it empties the memory from that object.

Various changes have been introduced in the GC in .NET 4.0. In .NET 4.0, the GC.Collect() method comprises the following overloaded methods:
GC.Collect(int), GC.Collect(int, GCCollectionMode)

Other new features which are introduced in .NET is to notify whenever the GC.Collect() method is invoked and  is completed successfully by using different methods. The .NET 4.0 provides a new background garbage collection which replaces the simultaneous garbage collection which is used in the earlier versions. This concurrent GC assigns memory while running and uses current segment (which is 16 MB on a workstation) for that. After that, all the threads are suspended. In case of background GC, a separate ephemeral GC - gen0 and gen1 is started, while the full GC - gen0, 1, and 2 - is already running.

   Related Questions in DOT NET Programming

©TutorsGlobe All rights reserved 2022-2023.