Spec-Zone.ru › OCaml

Модуль Semaphore.Binary

module Binary: sig .. end
type t 

Тип двоичных семафоров.

val make : bool -> t

make b возвращает новый двоичный семафор. Если b равно true, начальное значение семафора — 1, что означает "доступно". Если b равно false, начальное значение семафора — 0, что означает "недоступно".

val release : t -> unit

release s устанавливает значение семафора s в 1, переведя его в состояние "доступно". Если другие потоки ожидают s, один из них возобновляется.

val acquire : t -> unit

acquire s блокирует вызывающий поток, пока семафор s имеет значение 1 (доступен), затем атомарно устанавливает его в 0 и возвращает результат.

val try_acquire : t -> bool

try_acquire s немедленно возвращает false, если семафор s имеет значение 0. Если s имеет значение 1, его значение атомарно устанавливается в 0, и try_acquire s возвращает true.

© 1995-2024 INRIA.
https://ocaml.org/manual/5.2/api/Semaphore.Binary.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API