zeed
    Preparing search index...

    Class SerialQueue

    Guarentee serial execution of tasks. Able to wait, pause, resume and cancel all.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _logEmitter: LoggerInterface = ...
    call: TaskEvents = ...

    RPC like emitting of events.

    name: string

    Accessors

    Methods

    • Remove all tasks from queue that are not yet executing.

      Parameters

      • _unblock: boolean = true

      Returns Promise<void>

    • Emits an event to all subscribers and executes their corresponding event handlers.

      Type Parameters

      Parameters

      • event: U

        The event to emit.

      • ...args: Parameters<TaskEvents[U]>

        The arguments to pass to the event handlers.

      Returns Promise<boolean>

      A promise that resolves to a boolean indicating whether the event was successfully emitted.

    • Enqueue task to be executed when all other tasks are done. Except immediate = true.

      Type Parameters

      • T

      Parameters

      • task: TaskFn<T>
      • opt: { immediate?: boolean; name?: string } = {}

      Returns Promise<T>

    • If a task is already performing, execute immediately. Otherwise enqueue as usual.

      Type Parameters

      • T

      Parameters

      • task: TaskFn<T>
      • opt: { name?: string } = {}

      Returns Promise<T>

    • Emits an event to all subscribers and executes their corresponding event handlers.

      Type Parameters

      Parameters

      • event: U

        The event to emit.

      • ...args: Parameters<TaskEvents[U]>

        The arguments to pass to the event handlers.

      Returns Promise<ReturnType<TaskEvents[U]> | undefined>

      A promise that resolves to the result of the first subscriber's handler, or undefined if no subscribers are present.

    • Emits an event to all subscribers and executes their corresponding event handlers.

      Type Parameters

      Parameters

      • event: U

        The event to emit.

      • ...args: Parameters<TaskEvents[U]>

        The arguments to pass to the event handlers.

      Returns Promise<ReturnType<TaskEvents[U]>[] | undefined>

      A promise that resolves to an array of results from all subscribers, or undefined if no subscribers are present.

    • Pause execution after current task is finished.

      Returns Promise<void>