Interface PoolOptions<TResource>

Type Parameters

  • TResource

Hierarchy

  • PoolOptions

Properties

createTimeoutMs?: number

The number of milliseconds create should wait to resolve before being considered a failure. Defaults to Infinity.

defaultAcquireTimeoutMs?: number

The default number of milliseconds acquire should wait to resolve before being rejecting. Defaults to Infinity.

defaultReleaseTimeoutMs?: number

The default number of milliseconds release should wait to resolve before being rejecting. Defaults to Infinity.

destroyRetiredResourceForciblyAfterSeconds?: number

The maximum number of seconds after a resource is scheduled to be retired to allow existing leases to complete. Defaults to Infinity.

destroyTimeoutMs?: number

The number of milliseconds destroy should wait to resolve before being considered a failure. Defaults to Infinity.

maxConcurrentLeasesPerResource?: number

The maximum number of leases to issue for a given resource. Defaults to 1.

maxQueuedAcquireRequests?: number

The maximum number of acquire requests to allow in the queue before future requests are rejected. Defaults to Infinity.

maxResources?: number

The maximum number of resources to have in the pool at once. Retired resources count towards this limit. Defaults to Infinity.

minResources?: number

The minimum number of resources to keep alive in the pool at once. Defaults to 0.

resourceAllocationMethod?: ResourceAllocationMethod

The method to use for allocating concurrent leases on resources. Defaults to LAZY.

retireResourceAfterSeconds?: number

The number of seconds a specific resource should be considered usable before retiring it. Defaults to Infinity.

retireResourceAfterUses?: number

The number of times to lease a specific resource to a requestor before retiring it. Defaults to Infinity.

silenceReleaseErrors?: boolean

Automatically catch errors thrown by release. Defaults to false.

wallTime?: {
    now: (() => number);
}

The implementation of wall-time to use. Mostly used for testing. Defaults to Date

Type declaration

  • now: (() => number)
      • (): number
      • Returns number

Methods

  • The function to destroy a resource.

    Parameters

    • resource: TResource

    Returns Promise<void>

  • The function to invoke immediately before a resource is leased. A resource will not be acquired until the promise resolves, subject to the acquire timeout restrictions. If the promise rejects, the resource WILL NOT be acquired.

    Parameters

    Returns Promise<void>

  • The function to invoke immediately before a resource is released. A resource will not be released until this method completes, subject to the release timeout restrictions. If the promise rejects, the resource WILL STILL be released.

    Parameters

    Returns Promise<void>

Generated using TypeDoc