【发布时间】:2018-12-15 17:58:50
【问题描述】:
Discards 功能是否适用于 IDisposable 对象?
需要时是否调用Dispose();?
我有一个代码:
Boolean existing = Mutex.TryOpenExisting(name: key, rights: MutexRights.ReadPermissions, result: out Mutex _);
这里我只需要existing变量值。
如您所见,我在这里尝试使用“丢弃”变量,但我不确定在这种情况下这是否正确。
因为 Mutex obj 实现了 IDisposable。
那么在这种情况下哪种方式是正确的?这个:
Boolean existing = Mutex.TryOpenExisting(name: key, rights: MutexRights.ReadPermissions, result: out Mutex _);
或者这个:
Mutex mutex;
Boolean existing = Mutex.TryOpenExisting(name: key, rights: MutexRights.ReadPermissions, result: mutex);
mutex.Dispose();
【问题讨论】:
-
嗯,
_.Dispose();没有错,只是在door on the right 后面复习了。 -
稍后我会尝试
_.Dispose();代码,谢谢:) -
试一试,然后将
_重构为mutex。