http://www.interact-sw.co.uk/iangblog/2004/04/26/yetmoretimedlocking
为什么需要这一行?
System.GC.SuppressFinalize(tl.leakDetector);
我认为终结器不应该被抑制来运行向遗留监视器发出警报的代码。
显然,我只看了调试版本。
谢谢
发布于 2010-03-10 03:40:15
该代码是通过使leakDetector的终结器产生Debug.Fail来工作的,因此当该对象被终止时,您会在调试器中看到问题。
通过将SuppressFinalize(..)在Dispose()方法中调用,这会导致该对象仅在未调用Dispose时触发Debug.Fail。
https://stackoverflow.com/questions/2411969
复制相似问题