Finalize is automatically called only once on a given instance, unless the object is re-registered using a mechanism such as ReRegisterForFinalize and GC.SuppressFinalize has not been subsequently called.Every implementation of Finalize in a derived type must call its base type's implementation of Finalize.