Name
GC
Synopsis
This class allows you to control garbage collection programmatically. Garbage collection is the .NET service that periodically scans for unreferenced objects and reclaims the memory they occupy.
The garbage-collection service distinguishes between older and more
recently allocated memory using generations. The
most recently allocated memory is considered generation zero, and the
oldest memory is in generation MaxGeneration
.
Because new allocations are likely to be freed before long-standing
memory allocations, the garbage collector improves its performance by
concentrating on lower generations of memory. You can find out the
generation of an object using the GetGeneration( )
method. You can also get the number of memory bytes that are
currently allocated using the GetTotalMemory( )
method. A forceFullCollection
parameter indicates
whether this method should wait a short interval before returning to
collect and finalize some objects.
To force a full sweep garbage collection, use
the Collect( )
method. You can improve performance
by specifying the maximum generation
that will be
examined. Generally, it is best to let .NET perform garbage
collection automatically when the system is idle.
Some developers have lamented a noticeable lack of deterministic finalization within a garbage-collected system; that is, because the object’s lifetime is under the control of the garbage collector, there is no guarantee that an object is destroyed as soon as it becomes unreferenced. ...
Get C# in a Nutshell, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.