git ssb

0+

wanderer🌟 / lockmap



Tree: 6dedf34f48538aca6f9dc1e79a09e711369d1db2

Files: 6dedf34f48538aca6f9dc1e79a09e711369d1db2 / README.md

2213 bytesRaw

SYNOPSIS :lock: :globe_with_meridians:

NPM Package
Build Status
Coverage Status

js-standard-style

Creates a promise based map of locks that can be used as a semaphore

INSTALL

npm install lockmap

USAGE

const LockMap = require('lockmap')

const lockmap = new LockMap()
const id = 'test'

// set a lock for an id
const unlock = lockmap.lock(id)

setTimeout(() => {
  // do some async work
  console.log('here first!')
  unlock()
}, 300)

// wait until the lock resolves
await lockmap.getLock(id)
console.log('here now!')

API

constructor

index.js:5-7

Creates a new instance of LockMap

lock

index.js:15-25

Creates a lock on a given ID and returns a resolve function to unlock the lock

Parameters

Returns Function the resolve function to call once it to unlock

getLock

index.js:32-34

gets the current lock if any for a given id. If there is a lock this will return a promise that resolves once the lock is unlocked

Parameters

Returns Promise

LICENSE

MPL-2.0)

Built with git-ssb-web