Монитор против Mutex в c #

Возможный дубликат:
Каковы различия между различными параметрами синхронизации streamов в C #?

В чем разница между монитором и Mutex в C #?

Когда использовать монитор и когда использовать Mutex в C #?

Monitor управляется и имеет более легкий вес, но ограничивается вашим AppDomain . Mutex можно назвать и может охватывать процессы (допускающие некоторые простые сценарии IPC между приложениями) и может использоваться в коде, который требует дескриптора wait.

Для большинства простых сценариев Monitor (через lock ) в порядке.

Хорошим источником совета по этому поводу является «Threading in C #» Джозефа Альбахари. Все содержимое доступно в Интернете. На мой взгляд, стоит прочитать всю книгу , но вы можете проверить эти части:

  • On Locking (C # Monitor) ;

  • На Mutex .

Хотя он не охватывает новые параллельные конструкции .NET 4.0 , это очень хорошая отправная точка.

Обновление : книга обновлена. Теперь он включает в себя параллельное программирование .NET 4.0 в своей части 5 .

Мьютекс можно разделить между процессами и гораздо более тяжелый, чем монитор.

Используйте монитор, если вам не нужно синхронизировать границы процесса.

  • Различия между неявным, явным и текучим
  • Как определить, заблокирован ли объект (синхронизирован), чтобы он не блокировался на Java?
  • Убедитесь, что синхронизированные блокировки Java выполнены в порядке?
  • Синхронизировать устройства Android через время GPS?
  • Синхронизированный блок Java для .class
  • Правильный способ синхронизации ArrayList в java
  • Синхронизировано ли унаследовано в Java?
  • Можно ли использовать мьютекс в многопроцессорном случае в Linux / UNIX?
  • Синхронизация по целочисленному значению
  • Java Singleton и синхронизация
  • C # версия синхронизированного ключевого слова java?
  • Давайте будем гением компьютера.