2 つの名前付きミューテックスを使用して相互排除を実現するにはどうすればよいですか? 次のコードは機能するはずですが、機能しません。
[TestMethod]
public void xdfgndygfn()
{
using (var mutex1 = new Mutex(false, "1234"))
using (var mutex2 = new Mutex(false, "1234"))
{
mutex1.WaitOne();
mutex2.WaitOne(); //this should block, but it doesn't
}
}
Process Explorer を使用して、同じ名前を参照する 2 つのミューテックス ハンドルがあることを確認しました。これはうまくいくはずです...何が欠けていますか?