, .
:
. , ( ), , , GC , , . , , , .
/ , , :
public class PerfectDisposableClass : IDisposable
{
public PerfectDisposableClass()
{
Console.WriteLine( "Constructing" );
}
public void Dispose()
{
Dispose( true );
GC.SuppressFinalize(this);
}
protected virtual void Dispose(bool disposing)
{
Console.WriteLine( "Dispose(bool disposing) called, disposing = {0}", disposing );
if (disposing)
{
}
}
~PerfectDisposableClass()
{
Dispose(false);
}
}