Hyperlinkv0.9.0-beta.0

WorkPool

WorkPool.EffectContextinterfacesrc/internal/workPool.ts:923
EffectContext<T, EEnqueue, R>

Context passed to the effect callback during item processing.

Provides guarded enqueue operations for spawning derived/follow-up work. Attempting to enqueue the same item (by reference or by key) logs a warning and silently drops the item to prevent infinite processing loops.

For intentional re-processing, fail the worker effect (auto re-enqueue applies up to WorkPoolConfigBase.attempts) or re-inject via queue.enqueue off the events stream.

modelsWorkPoolConfigBase.attempts
export interface EffectContext<T, EEnqueue = never, R = never> {
  /** Enqueue derived items at normal priority. Self-enqueue is warned and dropped. */
  readonly add: QueueEnqueue<T, EEnqueue, R>;
  /** Enqueue derived items at high priority. Self-enqueue is warned and dropped. */
  readonly prioritize: QueueEnqueue<T, EEnqueue, R>;
  /** Enqueue derived items at low priority. Self-enqueue is warned and dropped. */
  readonly defer: QueueEnqueue<T, EEnqueue, R>;
  /** How many times this item has been processed (1 = first attempt). */
  readonly attempts: number;
  /** When the item first entered the queue as epoch millis (preserved across retries). */
  readonly enqueuedAt: number;
  /** The priority level this item was enqueued at. */
  readonly priority: Priority;
}
Referenced by 3 symbols