Интернет магазин китайских планшетных компьютеров



Компьютеры - Семафор (информатика) - Проблемы семафоров

24 февраля 2011


Оглавление:
1. Семафор (информатика)
2. Проблемы семафоров



Во-первых, можно написать программу с «утечкой семафора», вызвав enter и забыв вызвать leave. Реже встречаются ошибки, когда дважды вызывается leave.

Во-вторых, семафоры чреваты взаимной блокировкой потоков. В частности, опасен такой код:

Поток 1:
semaphore1.enter;
semaphore2.enter;
...
semaphore2.leave;
semaphore1.leave;
Поток 2:
semaphore2.enter;
semaphore1.enter;
...
semaphore1.leave;
semaphore2.leave;


Просмотров: 2537


<<< Неблокирующая синхронизация
Состояние гонки >>>