AngularTS
    Preparing search index...

    Interface WorkerHandle<TSend, TReceive>

    Managed, scope-bindable handle to one page-owned Web Worker.

    interface WorkerHandle<TSend = unknown, TReceive = unknown> {
        error: WorkerError | undefined;
        restartCount: number;
        status: WorkerStatus;
        model<T extends Record<string, unknown>>(
            channel?: string,
        ): ModelSyncTarget<T>;
        onError(listener: (error: WorkerError) => void): () => void;
        onMessage(
            listener: (data: TReceive, event: MessageEvent<unknown>) => void,
        ): () => void;
        post(message: TSend, transfer?: readonly Transferable[]): void;
        request(message: TSend, options?: WorkerRequestOptions): Promise<TReceive>;
        restart(): void;
        terminate(): void;
    }

    Type Parameters

    • TSend = unknown
    • TReceive = unknown
    Index

    Properties

    error: WorkerError | undefined

    Latest managed failure, retained across worker replacement.

    restartCount: number

    Number of explicit or automatic worker restarts.

    status: WorkerStatus

    Current managed lifecycle state.

    Methods

    • Adapt this handle to the standard model synchronization contract.

      Type Parameters

      • T extends Record<string, unknown>

      Parameters

      • Optionalchannel: string

      Returns ModelSyncTarget<T>

    • Subscribe to runtime, message, decoding, and request failures.

      Parameters

      Returns () => void

    • Subscribe to decoded worker messages.

      Parameters

      • listener: (data: TReceive, event: MessageEvent<unknown>) => void

      Returns () => void

    post

    • post(message: TSend, transfer?: readonly Transferable[]): void

      Send a typed message and optional transferable ownership list.

      Parameters

      • message: TSend
      • Optionaltransfer: readonly Transferable[]

      Returns void

    • Replace the native worker unless this connection was terminated.

      Returns void

    • Permanently terminate this managed connection.

      Returns void