Другие примитивы, такие как класс Semaphore или файлы в режиме исключительного доступа, будут рассматривать каждую попытку получить их — даже тем же потоком — как отдельную попытку и будут блокировать поток
C# Concurrency. Асинхронное программирование и многопоточность
·
Нир Добовицки