#c_sharp #net #многопоточность
Теоретический вопрос. Если нам нужно синхронизировать потоки, то в большинстве случаев наверное достаточно lock, это почти то же самое, что класс Monitor, а какая разница с классом Mutex, неужели только в том, что Монитор это вещь статическая,а для Мутекса нужно создавать экземпляр класса.
Ответы
Ответ 1
Класс Monitor работает только в рамках одного процесса. Mutex'у же, можно задать идентификатор, который будет единственным для всей ОС. Например, это полезно, если у Вас запущено два разных приложения, но между ними должна происходить синхронизация (как пример, запись в файл и чтение). Так же посмотрите вот этот вопрос. P.S. по поводу большинства случаев и использования lock - если у Вас есть ожидание задач (await) - то lock использовать не получится.
Комментариев нет:
Отправить комментарий