我有方法的()中項目乙項目甲互斥C#。如何系統識別互斥碼
和方法B()
我需要兩個方法在互斥
目前我的代碼如下
在項目中
Mutex mutex = new Mutex(fale,"MT");
mutex.WaitOne();
//SOME LENGTHY CODE
mutex.ReleaseMutex();
在該凸出
ect B我有
Mutex mutex = new Mutex(fale,"MT");
mutex.WaitOne();
//some different lengthy code
mutex.ReleaseMutex();
我可以看到他的功能作品互相排斥預期。
現在我這裏有
一個 2個問題:我在這兩種方法使用的名字命名爲「MT」。 這就是爲什麼這2個代碼變得相互排斥的原因。
即使我使用不同的名字,這兩個代碼是否相互排斥,是否有任何不同的方式?
兩個:假設項目A上的代碼放在一個無限循環 我如何在b啓動方法(如何避免死鎖)
1.第2名。這是一隻fa魚。當然,你不能期望合理的行爲不合理的代碼。你可以檢測到它,WaitOne()有一個超時,超時。 – 2014-10-19 15:18:55
建議您在前綴「Global \」或「Local \」中明確添加您的互斥體名稱,以清楚您的互斥體是否具有[會話或計算機範圍](http://msdn.microsoft.com/en-us/庫/ system.threading.mutex(v = vs.110)的.aspx)。 – StuartLC 2014-10-19 15:24:47