RedisSemaphoreStorage
RedisSemaphoreStorage
Signature
class RedisSemaphoreStorage implements SemaphoreStorage {
constructor(redis: Redis)
acquire(key: string, timeout: number = this.defaultTimeout, signal?: AbortSignal) => Promise<boolean>;
release(key: string) => Promise<void>;
getAvailablePermits(key: string) => Promise<number>;
getTotalPermits(key: string) => Promise<number>;
initialize(key: string, permits: number) => Promise<void>;
getSemaphoreInfo(key: string) => Promise<{
total: number;
available: number;
acquired: number;
initialized: boolean;
}>;
reset(key: string, permits?: number) => Promise<void>;
increasePermits(key: string, additionalPermits: number) => Promise<void>;
decreasePermits(key: string, permitsToRemove: number) => Promise<void>;
clear(key: string) => Promise<void>;
}
- Implements:
SemaphoreStorage
constructor
method
(redis: Redis) => RedisSemaphoreStorageacquire
method
(key: string, timeout: number = this.defaultTimeout, signal?: AbortSignal) => Promise<boolean>release
method
(key: string) => Promise<void>getAvailablePermits
method
(key: string) => Promise<number>getTotalPermits
method
(key: string) => Promise<number>initialize
method
(key: string, permits: number) => Promise<void>Initializes a semaphore with the specified number of permits
getSemaphoreInfo
method
(key: string) => Promise<{ total: number; available: number; acquired: number; initialized: boolean; }>Gets detailed information about a semaphore
reset
method
(key: string, permits?: number) => Promise<void>Resets a semaphore to its initial state
increasePermits
method
(key: string, additionalPermits: number) => Promise<void>Increases the total number of permits for a semaphore
decreasePermits
method
(key: string, permitsToRemove: number) => Promise<void>Decreases the total number of permits for a semaphore
clear
method
(key: string) => Promise<void>Clears a semaphore completely