В чем разница между AutoResetEvent и Mutex? - PullRequest
10 голосов
/ 11 января 2012

Я новичок в этих понятиях. Но когда я углубляюсь в threading, я запутываюсь.

Каково значение mutex, semaphore над autoresetevent.

Единственное отличие, которое я узнал в исследованиях, заключается в том, что mutex может выполнять все операции процесса. Если это так, почему у него нет такого же метода, как у Set, Reset, WaitOne.

Можем ли мы заменить AutoResetEvent на mutex и наоборот?

Пожалуйста, решите эту загадку.

1 Ответ

19 голосов
/ 11 января 2012

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

...