

EE = require('events').EventEmitter;
ee = new EE();
die = false;
ee.on('die', function () {
die = true;
});
setTimeout(function () {
ee.emit('die');
}, 100);
while (!die) {}
console.log('done');
EE = require('events').EventEmitter;
ee = new EE();
die = false;
ee.on('die', function () {
die = true;
});
setTimeout(function () {
ee.emit('die');
}, 100);
while (!die) {} // headshot!
console.log('done');
// synchronicznie:
var res = db.query('SELECT * FROM STH');
if (res) {
console.log(res);
}
else {
console.log('Aaaaa!');
}
// asynchronicznie:
db.query('SELECT * FROM STH', function (err, res) {
if (err) {
return console.log('Aaaaa!');
}
console.log(res);
});
Libraries like eventmachine will never be truly intuitive to use, because event-driven I/O is enough of a fundamental shift that it requires deep language integration. Javascript, it turns out, is a fundamentally event-driven language because of its origins in the browser.
npm install [name]npm update [name]list, uninstall, publish, test, help