@gulibs/react-autoroutes-client
Version:
Client-side utilities for React auto routes
56 lines • 1.73 kB
TypeScript
/**
* 客户端性能优化模块
* 提供缓存管理、并行处理、内存优化等功能
*/
export declare class PerformanceCache<K, V> {
private cache;
private accessTimes;
private maxSize;
constructor(maxSize?: number);
get(key: K): V | undefined;
set(key: K, value: V): void;
has(key: K): boolean;
delete(key: K): boolean;
clear(): void;
size(): number;
private evictLRU;
}
export declare class PerformanceTracker {
private timers;
private counters;
startTimer(name: string): void;
endTimer(name: string): number;
increment(name: string): void;
getCounter(name: string): number;
reset(): void;
getStats(): Record<string, any>;
}
export declare class BatchProcessor {
private batchSize;
private delay;
constructor(batchSize?: number, delay?: number);
processBatch<T, R>(items: T[], processor: (item: T) => Promise<R>): Promise<R[]>;
}
export declare class Debouncer {
private timers;
debounce(key: string, fn: () => void, delay: number): void;
cancel(key: string): void;
cancelAll(): void;
}
export declare class MemoryOptimizer {
private static instance;
private cleanupTasks;
private intervalId;
private constructor();
static getInstance(): MemoryOptimizer;
addCleanupTask(task: () => void): void;
startPeriodicCleanup(intervalMs?: number): void;
runCleanup(): void;
dispose(): void;
}
export declare const globalPerformanceTracker: PerformanceTracker;
export declare const globalMemoryOptimizer: MemoryOptimizer;
export declare function measureAsync<T>(name: string, fn: () => Promise<T>): Promise<T & {
duration: number;
}>;
//# sourceMappingURL=performance.d.ts.map