Requests that the common language runtime not call the finalizer for the specified object.
Assembly: mscorlib (in mscorlib.dll)
This method sets a bit in the object header of obj, which the runtime checks when calling finalizers. A finalizer, which is represented by the Object::Finalize method, is used to release unmanaged resources before an object is garbage-collected. If obj does not have a finalizer, the call to the method has no effect.
Objects that implement the IDisposable interface can call this method from the object's IDisposable::Dispose implementation to prevent the garbage collector from calling Object::Finalize on an object that does not require it. Typically, this is done to prevent the finalizer from releasing unmanaged resources that have already been freed by the IDisposable::Dispose implementation.
The following example demonstrates how to use the method in a resource class to prevent a redundant garbage collection from being called. The example uses the dispose pattern to free both managed resources (that is, objects that implement IDisposable) and unmanaged resources.
.NET FrameworkSupported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1
.NET Framework Client ProfileSupported in: 4, 3.5 SP1
XNA FrameworkSupported in: 3.0, 2.0, 1.0
Portable Class LibrarySupported in: Portable Class Library
Supported in: Windows Phone 8.1
Supported in: Windows Phone Silverlight 8.1
Supported in: Windows Phone Silverlight 8