CancellableAsyncLock interface
CancellableAsyncLock menyediakan mekanisme untuk memaksa tugas menggunakan 'kunci' yang sama untuk dijalankan secara serial.
Tugas yang tertunda dapat dibatalkan secara manual melalui abortSignal atau dibatalkan secara otomatis dengan mencapai nilai batas waktu yang disediakan.
Metode
| acquire<T>(string, (args: any[]) => Promise<T>, Acquire |
Mengembalikan janji yang diselesaikan ke nilai yang dikembalikan oleh fungsi tugas yang disediakan.
Hanya 1 tugas yang dapat dipanggil pada satu waktu untuk nilai Panggilan akuisisi dapat dibatalkan melalui
|
Detail Metode
acquire<T>(string, (args: any[]) => Promise<T>, AcquireLockProperties)
Mengembalikan janji yang diselesaikan ke nilai yang dikembalikan oleh fungsi tugas yang disediakan.
Hanya 1 tugas yang dapat dipanggil pada satu waktu untuk nilai key tertentu.
Panggilan akuisisi dapat dibatalkan melalui abortSignal.
Jika dibatalkan, janji akan ditolak dengan AbortError.
acquireTimeoutInMs juga dapat disediakan untuk properti.
Jika batas waktu tercapai sebelum task yang disediakan dipanggil, maka janji akan ditolak dengan Kesalahan yang menyatakan waktu tugas habis menunggu untuk memperoleh kunci.
function acquire<T>(key: string, task: (args: any[]) => Promise<T>, properties: AcquireLockProperties): Promise<T>
Parameter
- key
-
string
Semua panggilan acquire dikelompokkan menurut keyyang disediakan.
- task
-
(args: any[]) => Promise<T>
Fungsi yang akan dipanggil setelah kunci diperoleh.
- properties
- AcquireLockProperties
Properti tambahan untuk mengontrol perilaku acquire.
Mengembalikan
Promise<T>