git ssb

0+

wanderer🌟 / lockmap



Tree:
πŸ“„.travis.yml
πŸ“„LICENSE
πŸ“„README.md
πŸ“„index.js
πŸ“„package-lock.json
πŸ“„package.json
πŸ“tests
README.md

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.get(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

get

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