我有一个方法,里面有一个try/catch/finaly块.在try块中,我声明SqlDataReader如下:
SqlDataReader aReader = null;
aReader = aCommand.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)
在finally块中,手动处理的对象是在类级别设置的对象.因此,在该方法的对象,其实现IDisposable,如SqlDataReader上述,他们得到自动处理的?Close()在aReader执行while循环后调用,以获取阅读器的内容(应该是Dispose()调用的内容Close()).如果没有调用Close(),当方法完成或对象超出范围时,是否会自动关闭/处置此对象?
编辑:我知道这个using声明,但有些情况令我感到困惑.
我正在使用第三方封闭源API,它会抛出一个异常,指出"所有命名管道都很忙".
我想进一步调试(而不仅仅是单步执行),这样我才能真正了解幕后发生的事情.
我使用WinDbg转储了这个过程.我现在应该用什么命令来分析这个转储?
谢谢