我应该在IDisposable和Finalize上实现GC.SupressFinalize吗?

Kan*_*ini 2 .net garbage-collection idisposable finalizer suppressfinalize

我新客户所在的代码审查清单如下 -

实现Dispose和Finalize的类应该在Dispose实现中调用GC.SupressFinalize

为什么?

它是否应该读取为实现IDisposable接口的类应该在Dispose实现中调用GC.SupressFinalize?

或者我错过了一些愚蠢的东西?

Jon*_*eet 6

你错过了这样一个事实,即不是每个一次性类都需要一个终结器 - 事实上,很少有人这样做,特别是由于.NET 2.0的SafeHandle类型.如果没有终结者,你为什么要打电话SuppressFinalize