PerformanceManager
Manages performance event subscriptions for the editor. Available as editor.performance.
Listeners are lazy — internal editor hooks (frame, shape events) are only attached while at least one subscriber exists, so there is zero overhead when unused.
class PerformanceManager {}Example
const unsub = editor.performance.on("interaction-end", (event) => {
console.log(
`${event.name}: ${event.fps.toFixed(1)} fps, p95=${event.p95FrameTime.toFixed(1)}ms`,
);
});Constructor
Constructs a new instance of the PerformanceManager class
Parameters
| Name | Description |
|---|---|
|
Methods
on( )
Subscribe to a performance event. Returns an unsubscribe function.
on<K extends keyof TLPerfEventMap>(
event: K,
fn: (...args: TLPerfEventMap[K]) => void,
): () => void;Example
const unsub = editor.performance.on("interaction-end", (event) => {
sendToAnalytics({
name: event.name,
fps: event.fps,
p95: event.p95FrameTime,
});
});
// later: unsub()Parameters
| Name | Description |
|---|---|
| |
| |
Returns
() => void;once( )
Subscribe to a performance event once. The listener is removed after the first invocation. Returns an unsubscribe function for early removal.
once<K extends keyof TLPerfEventMap>(
event: K,
fn: (...args: TLPerfEventMap[K]) => void,
): () => void;Parameters
| Name | Description |
|---|---|
| |
| |
Returns
() => void;Prev
PerformanceApiAdapterNext
Point2d