Optional
locksPending: Map<string, { Protected
_locksProtected
lockGlobal lock box. Must be shared between all monitors.
Protected
lockLock constructor to be used.
Protected
Optional
locksGlobal pending locks map. Only used for deadlock detection.
The monitor count is isolated to this monitor. Use the shared lock box if you want to know the global count.
Protected
checkLock a sequence of lock requests.
This defaults to using write
locks the type is not specified.
Keys are locked in string sorted order.
Locking the same key is idempotent therefore lock re-entrancy is enabled.
Keys are automatically unlocked in reverse sorted order in case of rejection.
There is no support for lock upgrading or downgrading.
Re-entrancy should work concurrently.
Rest
...params: (string | RWLockRequest)[] | [...requests: (string | RWLockRequest)[], ctx: Partial<ContextTimedInput>] | [ctx?: Partial<ContextTimedInput>]Protected
setProtected
unsetThis waits for a lock in this specific monitor. Use the shared lock box if you want globally wait for unlock.
Rest
...params: [] | [key?: string, ctx?: Partial<ContextTimedInput>] | [key?: string] | [ctx?: Partial<ContextTimedInput>]Rest
...params: [...(string | RWLockRequest)[], ((monitor) => Promise<T>)] | [...(string | RWLockRequest)[], Partial<ContextTimedInput>, ((monitor) => Promise<T>)] | [undefined | Partial<ContextTimedInput>, ((monitor) => Promise<T>)]Rest
...params: [...(string | RWLockRequest)[], ((monitor) => AsyncGenerator<T, TReturn, TNext>)] | [...(string | RWLockRequest)[], Partial<ContextTimedInput>, ((monitor) => AsyncGenerator<T, TReturn, TNext>)] | [undefined | Partial<ContextTimedInput>, ((monitor) => AsyncGenerator<T, TReturn, TNext>)]Generated using TypeDoc
Monitor specific lock map.