You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/** * Throttle the given function to only run `size` times in parallel. * Extra calls will be queued until one of the earlier calls completes. */ declare function throat<TResult, TArgs extends any[]>( size: number, fn: (...args: TArgs) => Promise<TResult> ): (...args: TArgs) => Promise<TResult>;
/** * Throttle the given function to only run `size` times in parallel. * Extra calls will be queued until one of the earlier calls completes. */ declare function throat<TResult, TArgs extends any[]>( fn: (...args: TArgs) => Promise<TResult>, size: number ): (...args: TArgs) => Promise<TResult>;
/** * Create a throttle that only allows `size` calls in parallel. * Extra calls will be queued until one of the earlier calls completes. * * To create an exclusive lock, just use a `size` of `1`. */ declare function throat( size: number ): <TResult, TArgs extends any[] = []>( fn: (...args: TArgs) => Promise<TResult>, ...args: TArgs ) => Promise<TResult>; export default throat;
|