ill*_* mg 1 .net c# dispose suppressfinalize
有些类如DataTable已经在其构造函数中调用了SuppressFinalize,因此没有必要在其上调用dispose/use.(因为处置是为了更早发布,但没有什么可以释放)
那么,我想知道这些类的列表或通过反射找到这些类的列表的方法?
你的问题假设无效.呼叫SuppressFinalize与其有用性无关Dispose.当您通过显式或通过using块调用它时,Dispose方法仍将执行其中所写的任何操作.
通常,Dispose将调用SupressFinalize,但这是因为当您遵循典型的Dispose模式时,Dispose将执行从终结器运行的代码.由于代码已经运行,因此不需要最终化,这是一个相对昂贵的操作,因此Dispose将调用SupressFinalize.