Spec-Zone.ru › Nim 1

блокировки

Этот модуль содержит поддержку Nim для блокировок и условных переменных.

Типы

Lock = SysLock
Блокировка Nim; не определено, является ли она повторно входящей! Исходный код Редактировать
Cond = SysCond
Условная переменная Nim Исходный код Редактировать

Процедуры

proc initLock(lock: var Lock) {...}{.inline, raises: [], tags: [].}
Инициализирует заданную блокировку. Исходный код Редактировать
proc deinitLock(lock: var Lock) {...}{.inline, raises: [], tags: [].}
Освобождает ресурсы, связанные с блокировкой. Исходный код Редактировать
proc tryAcquire(lock: var Lock): bool {...}{.raises: [], tags: [].}
Попытка получить заданную блокировку. Возвращает true при успехе. Исходный код Редактировать
proc acquire(lock: var Lock) {...}{.raises: [], tags: [].}
Получает заданную блокировку. Исходный код Редактировать
proc release(lock: var Lock) {...}{.raises: [], tags: [].}
Освобождает заданную блокировку. Исходный код Редактировать
proc initCond(cond: var Cond) {...}{.inline, raises: [], tags: [].}
Инициализирует заданную условную переменную. Исходный код Редактировать
proc deinitCond(cond: var Cond) {...}{.inline, raises: [], tags: [].}
Освобождает ресурсы, связанные с условной переменной. Исходный код Редактировать
proc wait(cond: var Cond; lock: var Lock) {...}{.inline, raises: [], tags: [].}
ожидает условную переменную cond. Исходный код Редактировать
proc signal(cond: var Cond) {...}{.inline, raises: [], tags: [].}
отправляет сигнал условной переменной cond. Исходный код Редактировать

Шаблоны

template withLock(a: Lock; body: untyped)
Получает заданную блокировку, выполняет операторы в теле и освобождает блокировку после завершения выполнения операторов. Исходный код Редактировать

© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/locks.html

Spec-Zone.ru

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