const mutex = new Mutex(); mutex
.runExclusive([key1,key2,...], function() {
// ...
})
.then(function(result) {
// ...
});mutex.runExclusive([key1,key2,...], async () => {
const i = await store.get();
await store.put(i + 1);
});or
mutex.acquire([key1,key2,...], async () => {
const i = await store.get();
await store.put(i + 1);
}); mutex
.acquire([key1,key2,...])
.then(function(lock) {
// ...
mutex.release(lock);
});const lock = await mutex.acquire([key1,key2,...]);
try {
const i = await store.get();
await store.put(i + 1);
} finally {
mutex.release(lock);
}mutex.isLocked(key);