lockmap

0.1.1 • Public • Published

SYNOPSIS 🔒 🌐

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

  • id any

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

  • id

Returns Promise

LICENSE

MPL-2.0

Readme

Keywords

none

Package Sidebar

Install

npm i lockmap

Weekly Downloads

0

Version

0.1.1

License

MPL-2.0

Unpacked Size

3.23 MB

Total Files

23

Last publish

Collaborators

  • null_radix