NodeJs事件
在學(xué)習(xí)過(guò)程中的實(shí)例,加入自己的理解
//此段程序會(huì)陷入死循環(huán),使用while可使循環(huán)占據(jù)線程,而setTimeout的延時(shí)啟動(dòng)使得事件觸發(fā)不了
EE = require("events").EventEmitter;
ee = new EE();
die = false;
ee.on("die", function (a, b, c) {
die = true;
console.log("arguments:" + a + b + c);
});
console.log("test");
//ee.emit("die", "arg1", "arg2", "arg3");//這句放在這兒可使事件執(zhí)行從而可以使程序不會(huì)陷入死循環(huán)
setTimeout(function () { //因?yàn)閟ettimeout的掛起所以后面的判斷只執(zhí)行一次
console.log("test2");
ee.emit("die","arg1","arg2","arg3");
}, 3000);
while (!die) {
console.log("test3");
}
if (die) {
console.log("the die is true");
}
else {
console.log("the die is false");
}
轉(zhuǎn)載于:https://www.cnblogs.com/zwqsgff/archive/2013/04/02/2995140.html
總結(jié)
- 上一篇: 谈谈我工作的经历
- 下一篇: hdu 1054(最小顶点覆盖)