我正在阅读这种情况,其中使用 C# using 语句可能会导致问题。如果在 using 语句末尾调用的 Dispose 函数也将引发异常,则在 using 块范围内引发的异常可能会丢失。这突出表明,在决定是否添加 using 语句时,在某些情况下应小心谨慎。
在使用流和从 DbConnection 派生的类时,我只倾向于使用 using 语句。如果我需要清理非托管资源,我通常更喜欢使用 finally 块。
这是 IDisposable 接口创建性能计时器的另一种用途,该计时器将停止计时器并将时间记录到 Dispose 函数中的注册表。 http://thebuildingcoder.typepad.com/blog/2010/03/performance-profiling.html
这是对 IDisposable 接口的良好使用吗?它不是清理资源或处理任何其他对象。但是,我可以看到它如何通过将正在分析的代码整齐地包装在 using 语句中来清理调用代码。
是否有时不应该使用 using 语句和 IDisposable 接口?以前在 using 语句中实现 IDisposable 或包装代码是否给您带来了问题?
谢谢