Koe*_*oen 13 c# mutex dispose cross-process
我正在开发2个Windows服务,它有一个公共数据库,我想用系统Mutex锁定(交叉处理).
现在我不知道是否它的确定只是调用WaitOne()和ReleaseMutex()在一个try-finally块或者我应该也配置互斥(例如,在一个using块).如果是这样,我想我应该永远赶AbandonedMutexException在WaitOne()方法还是我错在这里?
Ser*_*ier 16
互斥锁是Windows内核对象(此处包含在.NET对象中).
因此,它应该是一种非托管资源.
更准确地说,.NET对象包含互斥锁的HANDLE,必须以某种方式释放/处理.
我不相信Mutex类docs中没有处理互斥对象的代码示例.虽然亨齐在评论一个好点:互斥对象是静态的,会被终结或者被安置或破坏由Windows内核在进程退出时.
另请注意,Close()也会处理对象.
当然,即使您不使用它,在应用程序中保留现有Mutex对象也没有错.它们是轻资源.
| 归档时间: |
|
| 查看次数: |
8806 次 |
| 最近记录: |