Smart lock
$ npm install lockin
var lock = require('lockin')();
// key is String Or Array of Strings
lock(key, (err, locking, done)=>{
if(err) return;
if(locking) return;
...
done();
});