I have a blank Winform with a destructor method
public partial class Form1 : Form
{
public Form1()
{
System.Diagnostics.Trace.WriteLine("Form1.Initialize " + this.GetHashCode().ToString());
InitializeComponent();
}
~Form1()
{
System.Diagnostics.Trace.WriteLine("Form1.Dispose " + this.GetHashCode().ToString());
}
}
When the form is destroyed, I want it to write to the output window:
(Form1 opened) Form1.Initialize 41149443 (Form1 closed) Form1.Dispose 41149443
MSDN suggests 3 ways in implementing destructor:
~Destructor() http://msdn.microsoft.com/en-us/library/66x5fx1b.aspx
IDisposable http://msdn.microsoft.com/en-us/library/system.idisposable.aspx
SafeHandle pattern http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.safehandle.aspx
However, none of these ways write "Form1.Dispose 41149443" to the output Window.
Therefore, I am not able to tell whether the form has been destroyed or not. Suggestions ?
Should I give up hope on achieving this due to uncertainty of garbage collector?
Is there another way to know whether Form1 has been garbage collected ?