std/private/syslocks

Source   Edit  

Types

SysCond {.importc: "RTL_CONDITION_VARIABLE", header: "<windows.h>".} = object
  
Source   Edit  
SysLock {.importc: "CRITICAL_SECTION", header: "<windows.h>", final, pure.} = object
  
Source   Edit  

Procs

proc acquireSys(L: var SysLock) {.importc: "EnterCriticalSection",
                                  header: "<windows.h>", ...raises: [], tags: [],
                                  forbids: [].}
Acquires the lock L. Source   Edit  
proc broadcastSysCond(hEvent: var SysCond) {.stdcall, noSideEffect,
    dynlib: "kernel32", importc: "WakeAllConditionVariable", ...raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc deinitSys(L: var SysLock) {.importc: "DeleteCriticalSection",
                                 header: "<windows.h>", ...raises: [], tags: [],
                                 forbids: [].}
Source   Edit  
proc deinitSysCond(cond: var SysCond) {.inline, ...raises: [], tags: [],
                                        forbids: [].}
Source   Edit  
proc initSysCond(cond: var SysCond) {.inline, ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc initSysLock(L: var SysLock) {.importc: "InitializeCriticalSection",
                                   header: "<windows.h>", ...raises: [], tags: [],
                                   forbids: [].}
Initializes the lock L. Source   Edit  
proc releaseSys(L: var SysLock) {.importc: "LeaveCriticalSection",
                                  header: "<windows.h>", ...raises: [], tags: [],
                                  forbids: [].}
Releases the lock L. Source   Edit  
proc signalSysCond(hEvent: var SysCond) {.stdcall, noSideEffect,
    dynlib: "kernel32", importc: "WakeConditionVariable", ...raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc tryAcquireSys(L: var SysLock): bool {.inline, ...raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc waitSysCond(cond: var SysCond; lock: var SysLock) {....raises: [], tags: [],
    forbids: [].}
Source   Edit