lockup
Version:
Lockup uses a certain lock file to queue and deal with inter-process asynchronous resources.
32 lines (23 loc) • 498 B
JavaScript
var lockup = require('lockup');
var file = 'foo.lock';
var counter = 0;
function foo(delay){
var c = counter ++;
if(c){
throw 'blah'
}
lockup.lock(file, function (err) {
if(err){
return console.log(err);
}
setTimeout(function () {
console.log('counter', c);
// release the lock.
lockup.unlock(file);
}, delay);
});
}
foo(1000);
foo(0);
;