Source
Edit
This module contains Nim's support for locks and condition vars.
proc acquire(lock: var Lock) {.inline, ...raises: [], tags: [], forbids: [].}
-
Acquires the given lock.
Source
Edit
proc broadcast(cond: var Cond) {.inline, ...raises: [], tags: [], forbids: [].}
-
Unblocks all threads currently blocked on the specified condition variable cond.
Source
Edit
proc deinitCond(cond: Cond) {.inline, ...raises: [], tags: [], forbids: [].}
-
Frees the resources associated with the condition variable.
Source
Edit
proc deinitLock(lock: Lock) {.inline, ...raises: [], tags: [], forbids: [].}
-
Frees the resources associated with the lock.
Source
Edit
proc initCond(cond: var Cond) {.inline, ...raises: [], tags: [], forbids: [].}
-
Initializes the given condition variable.
Source
Edit
proc initLock(lock: var Lock) {.inline, ...raises: [], tags: [], forbids: [].}
-
Initializes the given lock.
Source
Edit
proc release(lock: var Lock) {.inline, ...raises: [], tags: [], forbids: [].}
-
Releases the given lock.
Source
Edit
proc signal(cond: var Cond) {.inline, ...raises: [], tags: [], forbids: [].}
-
Sends a signal to the condition variable cond.
Source
Edit
proc tryAcquire(lock: var Lock): bool {.inline, ...raises: [], tags: [],
forbids: [].}
-
Tries to acquire the given lock. Returns true on success.
Source
Edit
proc wait(cond: var Cond; lock: var Lock) {.inline, ...raises: [], tags: [],
forbids: [].}
-
Waits on the condition variable cond.
Source
Edit
template withLock(a: Lock; body: untyped)
-
Acquires the given lock, executes the statements in body and releases the lock after the statements finish executing.
Source
Edit