parallel-file-uploader
Version:
高性能并行文件上传工具,支持大文件分片上传、断点续传、Web Worker多线程处理
54 lines • 1.23 kB
TypeScript
/**
* 速度限制器
* 使用令牌桶算法控制上传速度
*/
export declare class SpeedLimiter {
private maxBytesPerSecond;
private bucket;
private lastRefill;
private enabled;
constructor(maxBytesPerSecond?: number, enabled?: boolean);
/**
* 启用/禁用速度限制
*/
setEnabled(enabled: boolean): void;
/**
* 检查是否启用
*/
isEnabled(): boolean;
/**
* 设置最大上传速度
*/
setMaxBytesPerSecond(maxBytesPerSecond: number): void;
/**
* 获取当前速度限制
*/
getMaxBytesPerSecond(): number;
/**
* 请求发送指定字节数的数据
* 返回需要等待的毫秒数
*/
requestBytes(bytes: number): Promise<number>;
/**
* 等待指定的延迟时间
*/
wait(delayMs: number): Promise<void>;
/**
* 重新填充令牌桶
*/
private refillBucket;
/**
* 重置令牌桶
*/
reset(): void;
/**
* 获取当前令牌桶状态
*/
getStatus(): {
bucket: number;
maxBytesPerSecond: number;
enabled: boolean;
utilizationPercent: number;
};
}
//# sourceMappingURL=SpeedLimiter.d.ts.map