假设我有私有静态MyClient _myClient,它打开与外部服务器的连接。它实现了IDisposable。 '客户'是在第一次使用时创建的:
if (_myClient == null)
_myClient = new MyClient (_myClientHostAddress);
我假设一旦执行了上述语句,类加载器就会将实例_myClient放在应用程序堆栈上。
这种用法是否正确:
using (_myClient)
如果是这样,当using语句超出范围时,_myClient会发生什么?
_myClient是否已标记为gc或由IDisposable直接从应用程序堆栈中弹出?
如果标记为垃圾收集,垃圾收集器会将其从堆栈中弹出吗?
谢谢!