Documentation / @imvu/bot / RateLimiter
Class: RateLimiter
Defined in: packages/bot/src/RateLimiter.ts:13
A sliding-window send queue. Tasks run in order, never more than messages per perMs; once maxQueue tasks are waiting, new ones are rejected rather than piling up behind a flood.
Constructors
Constructor
ts
new RateLimiter(
limit,
maxQueue?,
now?
): RateLimiter;Defined in: packages/bot/src/RateLimiter.ts:20
Parameters
| Parameter | Type | Default value |
|---|---|---|
limit | RateLimit | undefined |
maxQueue? | number | 20 |
now? | () => number | Date.now |
Returns
RateLimiter
Accessors
pending
Get Signature
ts
get pending(): number;Defined in: packages/bot/src/RateLimiter.ts:28
Returns
number
Methods
schedule()
ts
schedule<T>(task): Promise<T>;Defined in: packages/bot/src/RateLimiter.ts:32
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
task | () => Promise<T> |
Returns
Promise<T>
stop()
ts
stop(): void;Defined in: packages/bot/src/RateLimiter.ts:47
Reject nothing already sent; drop everything still waiting.
Returns
void