@awesome-ecs/workers
Version:
The Workers package for Awesome ECS. Provides basic implementation for the Worker communication using ECS.
32 lines (31 loc) • 1.33 kB
text/typescript
import { i as WorkerInstance, n as WorkerRequestMessage } from "../worker-message-b803N7ST.mjs";
import { n as IWorkerHandlerRegistry, t as IWorkerMessageQueue } from "../worker-queue-BJK3jKsH.mjs";
//#region src/helpers/worker-handler-registry.d.ts
declare class WorkerHandlerRegistry implements IWorkerHandlerRegistry {
private readonly handlers;
register(requestType: string, handler: WorkerInstance<any, any>): void;
resolve(requestType: string): WorkerInstance<any, any> | undefined;
}
//#endregion
//#region src/helpers/worker-message-queue.d.ts
declare class WorkerMessageQueue implements IWorkerMessageQueue {
private _queue;
private _head;
private _enqueueTimes;
private _stalledEntries;
private _recentStalledWaitTimesMs;
constructor();
get size(): number;
get queue(): WorkerRequestMessage<any>[];
enqueue(message: WorkerRequestMessage<any>): void;
dequeue(): WorkerRequestMessage<any>;
/** Marks all currently queued messages as stalled until they are eventually dispatched. */
markAllAsStalled(): void;
/** Returns and clears wait times for messages that previously stalled before dispatch. */
flushWaitTimes(): number[];
peek(): WorkerRequestMessage<any>;
clear(): void;
}
//#endregion
export { WorkerHandlerRegistry, WorkerMessageQueue };
//# sourceMappingURL=index.d.mts.map