Control.Concurrent.QSem
| Copyright | (c) Университет Глазго 2001 |
|---|---|
| License | BSD-style (см. файл libraries/base/LICENSE) |
| Maintainer | libraries@haskell.org |
| Stability | экспериментальная |
| Portability | непереносимая (конкурентность) |
| Safe Haskell | Безопасная |
| Language | Haskell2010 |
Содержание
Описание
Простые семафоры с количеством ресурсов.
Простые семафоры с количеством ресурсов
QSem представляет собой семафор с количеством ресурсов, в котором ресурс приобретается и освобождается единицами по одному. Он гарантирует FIFO-порядок для удовлетворения заблокированных waitQSem вызовов.
Шаблон
bracket_ waitQSem signalQSem (...)
безопасен; он никогда не теряет единицу ресурса.
newQSem :: Int -> IO QSem Source
Создайте новый QSem с заданным начальным количеством. Начальное количество должно быть не менее 0.
waitQSem :: QSem -> IO () Source
Подождите, пока единица станет доступной
signalQSem :: QSem -> IO () Source
Сигнализируйте, что единица QSem доступна
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/base-4.8.2.0/Control-Concurrent-QSem.html