Originally Posted by
vikasvaidya
Few quick points on Finalize() and Dispose() in C#:
1. Finalize() is the C# equivalent of destructor ~Object() syntax in C#. In VB.Net you implement the Finalize() by overriding it. But, in C# the compiler translates the destructor to a Finalize() method.
2. Finalize() can NOT be overridden or called in C#.
3. Since, Finalize() is called by the Garbage Collector, it is non-deterministic.
4. Dispose() has to be implemented in classes implementing IDispose interface.
5. Its the right place for freeing-up unmanaged resources like file, handles, and connections etc.
6. Dispose() method is called explicitely in the code itself.
7. Dispose() method is automatically called (for objects which implement IDispose), when used in a "using" statement.
Still hungry..... http:// forums . asp . net/p/466400/593963 . aspx#593963
----V V----
Regards,
Vikas Vaidya