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

Dependencies (0)

    Dev Dependencies (5)

    Package Sidebar

    Install

    npm i lockmap

    Weekly Downloads

    3

    Version

    0.1.1

    License

    MPL-2.0

    Unpacked Size

    3.23 MB

    Total Files

    23

    Last publish

    Collaborators

    • null_radix