ÿØÿà JFIF ` ` ÿþ
|
Server : Apache System : Linux cloud.heroica.com.br 4.18.0-553.36.1.el8_10.x86_64 #1 SMP Wed Jan 22 03:07:54 EST 2025 x86_64 User : farolpborg ( 1053) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /var/www/node_services/apimetaexamepopular/node_modules/thingies/es6/ |
Upload File : |
/**
* Creates a lock manager, which can create exclusive locks across browser tabs.
* Uses `window.localStorage` by default to lock across tabs.
*
* Below example, will wait for 5 seconds to acquire a lock, and then execute
* the function once lock is acquired and release the lock after function
* execution. It will fail with `LOCK_TIMEOUT` error if lock is not acquired
* within the 5 seconds. The lock will acquired for 2 seconds (default 1000ms).
*
* ```ts
* Locks.get().lock('my-lock', 2000, 5000)(async () => {
* console.log('Lock acquired');
* });
* ```
*/
export declare class Locks {
protected readonly store: Record<string, string>;
protected readonly now: () => number;
protected readonly pfx: string;
static get: () => Locks;
constructor(store?: Record<string, string>, now?: () => number, pfx?: string);
acquire(id: string, ms?: number): (() => void) | undefined;
isLocked(id: string): boolean;
lock(id: string, ms?: number, timeoutMs?: number, checkMs?: number): <T>(fn: () => Promise<T>) => Promise<T>;
}