Мьютексы в C#

Что такое mutex и с чем его едят?

Mutex - это класс, который позволяет обеспечить синхронизацию среди множества процессов. По сути он очень похож на Monitor, поскольку его основная задача - обеспечить доступ только одного потока к данным, помеченным Mutex.

"Мьютекс представляет собой взаимно исключающий синхронизирующий объект. Это означает, что он может быть получен потоком только по очереди. Мьютекс предназначен для тех ситуаций, в которых общий ресурс может быть одновременно использован только в одном потоке. Допустим, что системный журнал совместно используется в нескольких процессах, но только в одном из них данные могут записываться в файл этого журнала в любой момент времени. Для синхронизации процессов в данной ситуации идеально подходит мьютекс." - https://professorweb.ru/my/csharp/thread_and_files/1/1_11.php.

Александр Шевчук также записывал видео, где рассказывал про синхронизацию при помощи объектов ядра Рекоммендую к просмотру если интересно: https://www.youtube.com/watch?v=DAwhCr3tS-8