Module locks

This module contains Nim's support for locks and condition vars.Low level system locks and condition vars.

Types

Lock = SysLock
Nim lock; whether this is re-entrant or not is unspecified!   Source
Cond = SysCond
Nim condition variable   Source

Procs

proc initLock(lock: var Lock) {.inline, raises: [], tags: [].}
Initializes the given lock.   Source
proc deinitLock(lock: var Lock) {.inline, raises: [], tags: [].}
Frees the resources associated with the lock.   Source
proc tryAcquire(lock: var Lock): bool {.raises: [], tags: [].}
Tries to acquire the given lock. Returns true on success.   Source
proc acquire(lock: var Lock) {.raises: [], tags: [].}
Acquires the given lock.   Source
proc release(lock: var Lock) {.raises: [], tags: [].}
Releases the given lock.   Source
proc initCond(cond: var Cond) {.inline, raises: [], tags: [].}
Initializes the given condition variable.   Source
proc deinitCond(cond: var Cond) {.inline, raises: [], tags: [].}
Frees the resources associated with the lock.   Source
proc wait(cond: var Cond; lock: var Lock) {.inline, raises: [], tags: [].}
waits on the condition variable cond.   Source
proc signal(cond: var Cond) {.inline, raises: [], tags: [].}
sends a signal to the condition variable cond.   Source