次の方法で共有


CancellableAsyncLock interface

CancellableAsyncLock は、同じ 'キー' を使用してタスクを順次実行するメカニズムを提供します。

保留中のタスクは、abortSignal を使用して手動で取り消すか、指定されたタイムアウト値に達すると自動的に取り消すことができます。

メソッド

acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)

指定されたタスク関数によって返される値に解決される Promise を返します。 特定の key 値に対して一度に呼び出すことができるタスクは 1 つだけです。

取得呼び出しは、abortSignalを介して取り消すことができます。 キャンセルされた場合、約束は AbortErrorで拒否されます。

プロパティに acquireTimeoutInMs を指定することもできます。 指定された task が呼び出される前にタイムアウトに達した場合、タスクがロックの取得を待機中にタイムアウトしたことを示すエラーが表示され、promise は拒否されます。

メソッドの詳細

acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)

指定されたタスク関数によって返される値に解決される Promise を返します。 特定の key 値に対して一度に呼び出すことができるタスクは 1 つだけです。

取得呼び出しは、abortSignalを介して取り消すことができます。 キャンセルされた場合、約束は AbortErrorで拒否されます。

プロパティに acquireTimeoutInMs を指定することもできます。 指定された task が呼び出される前にタイムアウトに達した場合、タスクがロックの取得を待機中にタイムアウトしたことを示すエラーが表示され、promise は拒否されます。

function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>

パラメーター

key

string

すべての acquire 呼び出しは、指定された keyによってグループ化されます。

task

(args: any[]) => Promise<T>

ロックが取得された後に呼び出す関数。

properties
AcquireLockProperties

acquireの動作を制御するための追加のプロパティ。

戻り値

Promise<T>