>>585
それはお前がおかしい。(2重に)

まず>>577の書き方がおかしい。
普通に読んだら、「mutex使わずにシングルトン?」と読める。>>580がまとも。
585の意味なら、そこで「モック」と明示的に書かなければ通じない。

次に585、それがそもそもおかしい。
ハードのモックをソフトで作って、排他制御が出来ていないときに正しく落とすのなら、
MutexのTryOpen等を使って実装し、(例えば以下)
https://docs.microsoft.com/ja-jp/dotnet/api/system.threading.mutex.tryopenexisting?view=netframework-4.8
falseが返ってきたら全部アウト(落とす)というように実装するのが普通で、
そこでシングルトンとかいう構造で無理矢理落とそうというのがそもそも間違っている。
というかそのお前が作っているモック、全く信用ならないと思うが。
それだと「落ちるときもある」であって、「上位での排他制御を忘れた場合に100%落ちる」ではないだろ。
それでは使い物にならないと思うが。