Class WrappedExpiringReadWriteLocker
Hierarchy
WrappedExpiringReadWriteLocker
Properties
Protected Readonly expiration
expiration: number
Protected Readonly locker
Protected Readonly logger
Methods
Private expiringPromise
expiringPromise<T>( identifier: ResourceIdentifier , whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T > ) : Promise < T >
Type parameters
Parameters
whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T >
( maintainLock: ( ) => void ) : T | Promise < T >
Parameters
Returns T | Promise < T >
Returns Promise < T >
withReadLock
withReadLock<T>( identifier: ResourceIdentifier , whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T > ) : Promise < T >
Type parameters
Parameters
whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T >
( maintainLock: ( ) => void ) : T | Promise < T >
Parameters
Returns T | Promise < T >
Returns Promise < T >
withWriteLock
withWriteLock<T>( identifier: ResourceIdentifier , whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T > ) : Promise < T >
Type parameters
Parameters
whileLocked: ( maintainLock: ( ) => void ) => T | Promise < T >
( maintainLock: ( ) => void ) : T | Promise < T >
Parameters
Returns T | Promise < T >
Returns Promise < T >
Legend
Variable
Function
Function with type parameter
Type alias
Type alias with type parameter
Class
Class with type parameter
Constructor
Interface
Interface with type parameter
Wraps around an existing ReadWriteLocker and adds expiration logic to prevent locks from getting stuck.