UNPKG

perfor-monitor

Version:

性能监控工具库

75 lines (74 loc) 1.93 kB
import { PanelJank } from './panel-jank'; import type { PanelJankOps } from './panel-jank'; import { PerformanceBase } from './performance-base'; export interface JankStutterOptions { /** * 帧率 * 默认16.67,单位:ms */ frame?: number; /** * 设备刷新率 * 默认60,单位:Hz */ deviceRefreshRate?: number; /** * 事件处理延迟阈值(小卡顿) * 默认50ms */ minJankThreshold?: number; /** * 事件处理延迟阈值(大卡顿) * 默认100ms */ largeJankThreshold?: number; /** * 数据更新间隔 * 默认1000ms */ updateInterval?: number; } export declare class PerformanceJankStutter extends PerformanceBase { private frameTimes; private jankCounts; /** 帧率 */ frame: number; /** 设备刷新率 */ deviceRefreshRate: number; /** 事件延迟阈值(小卡顿)*/ minJankThreshold: number; /** 事件延迟阈值(大卡顿)*/ largeJankThreshold: number; /** 数据更新间隔 */ updateInterval: number; /** 性能观察器 */ private performanceObserver; /** 定时更新器 */ private updateTimer; /** 收集的事件数据 */ private eventEntries; /** RAF ID */ private rafId; constructor(ops?: JankStutterOptions); startMonitoring(): void; /** * 启动基于 PerformanceObserver 的事件计时监测 */ private startEventTimingMonitor; /** * 启动基于 RAF 的帧率监测 */ private startFrameRateMonitor; /** * 传统的卡顿监测方式(兼容性保障) */ private startLegacyMonitor; /** * 更新并发送性能指标 */ private updateMetrics; stopMonitoring(): void; } export declare function useJankStutter(opsJank?: JankStutterOptions, opsPanel?: PanelJankOps): { panelJank: PanelJank; };