Options
All
  • Public
  • Public/Protected
  • All
Menu

Class TaskLock

任务的加锁服务接口。

当包含任务的服务需要多实例运行时,有些任务可能同时只需要运行一次,此时你可能需要一个加锁服务,来保证任务不会重复执行。

Hierarchy

  • TaskLock

Index

Constructors

Methods

Constructors

constructor

Methods

Abstract lock

  • lock(key: string, context: TaskContext): Promise<undefined | null | string | boolean>
  • 加锁接口。

    • 返回 undefined 表示加锁失败。
    • 其余情况表示加锁成功,继而执行任务。之后会将返回值传递到 TaskLock.unlock 进行解锁。

    Parameters

    Returns Promise<undefined | null | string | boolean>

    普通状况下直接使用 key 进行加锁和解锁。如果有更高的安全需求,可以生成 secret 来避免错误解锁。

Abstract on_lock_failed

Abstract unlock

  • unlock(key: string, secret: undefined | null | string | boolean, context: TaskContext): Promise<void>

Generated using TypeDoc