annotations-design-patterns
    Preparing search index...

    Function Mutex

    • Serializa las llamadas concurrentes a un método asíncrono en la misma instancia: cada llamada espera a que termine la anterior (cola FIFO), evitando condiciones de carrera. Un fallo no bloquea la cola.

      Type Parameters

      • This
      • Args extends unknown[]
      • Return

      Parameters

      • target: (this: This, ...args: Args) => Promise<Return>
      • context: ClassMethodDecoratorContext<
            This,
            (this: This, ...args: Args) => Promise<Return>,
        >

      Returns (this: This, ...args: Args) => Promise<Return>

      class Db {
      @Mutex
      async write(data: Data): Promise<void> { ... } // nunca en paralelo
      }