gridlock

1.0.3 • Public • Published

gridlock - lock one thing

The gridlock Node.js module provides a simple locking mechanism for single things.

Build Status

Usage

var gridlock = require('gridlock')
 
function op (cb) {
  setTimeout(cb, 1000)
}
var locker = gridlock()
var id = 'abc'
locker.lock(id)
op(function () {
  locker.unlock(id)
})
if (locker.lock(id)) {
  locker.once(id, function () {
    console.log('done')
  })
}

types

gridlock()

Returns a new locker which is an instance of EventEmitter.

locker.lock(id)

Tries to store the provided identifier. Returns false if it succeeds and true if it fails meaning the id has already been stored (locked).

  • id String() is the identifier of a thing

locker.unlock(id)

Releases the provided identifier and emits it.

  • id String() is the identifier of a thing

exports

To access the Gridlock class require('gridlock').

Installation

With npm do:

$ npm install gridlock

License

MIT License

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.3
    2
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.3
    2
  • 1.0.2
    0
  • 1.0.1
    0
  • 1.0.0
    0

Package Sidebar

Install

npm i gridlock

Weekly Downloads

2

Version

1.0.3

License

MIT

Last publish

Collaborators

  • michaelnisi