2013-09-02 2 views
0

Как с помощью семафора вы можете создать специальный критический раздел, который позволяет выполнять два потока внутри, а не обычный поток?Семафоры/Создание критического раздела

+0

Концептуально или для определенного языка? – rene

+3

http://stackoverflow.com/questions/10898022/differnce-between-counting-and-binary-semaphores. – Pradheep

ответ

0

В псевдокоде это выглядит так:

s = Semaphore(2) # max 2 possible threads accessing the critical section 

Каждый поток затем использует семафор для сериализации доступа:

s.decrement() # may block 
    # enter critical section 
s.increment() 

Полезный ресурс: The Little Book of Semaphores