Node.js Domain 模塊實例詳解
更新時間:2020年03月18日 15:42:37 作者:麥葉
這篇文章主要介紹了Node.js Domain 模塊實例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
Node.js Domain(域) 簡化異步代碼的異常處理,可以捕捉處理try catch無法捕捉的異常。
Domain 模塊可分為隱式綁定和顯式綁定:
- 隱式綁定: 把在domain上下文中定義的變量,自動綁定到domain對象
- 顯式綁定: 把不是在domain上下文中定義的變量,以代碼的方式綁定到domain對象
創(chuàng)建domain.js,代碼如下:
var eventEmitter=require("events").EventEmitter;
var domain=require("domain");
var emitter1=new eventEmitter();
//創(chuàng)建域
var domain1=domain.create();
domain1.on("error",function(err){
console.log("domain1來處理這個錯誤:"+err.message);
})
//顯示綁定
domain1.add(emitter1);
//添加emitter1對error的監(jiān)聽
emitter1.on("error",function(err){
console.log("emitter1來處理這個錯誤:"+err.message);
})
emitter1.emit("error",new Error("觸發(fā)錯誤,指定由emitter1處理"));
emitter1.removeAllListeners("error");//移除emitter1對error的監(jiān)聽
emitter1.emit("error",new Error("觸發(fā)錯誤,指定由domain1處理"));
//創(chuàng)建域
var domain2=domain.create();
domain2.on("error",function(err){
console.log("domain2來處理這個錯誤:"+err.message);
})
//隱式綁定
domain2.run(function(){
var emitter2=new eventEmitter();
emitter2.emit("error",new Error("觸發(fā)錯誤,指定由domain2處理"));
})
domain1.remove(emitter1);
emitter1.emit("error",new Error("觸發(fā)錯誤,系統(tǒng)將崩潰"));
總結
到此這篇關于Node.js Domain 模塊實例詳解的文章就介紹到這了,更多相關node.js domain 模塊內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Linux 安裝nodejs環(huán)境及路徑配置詳細步驟
大家都知道linux安裝nodejs有兩種比較常用的方法,一種解壓即可用的方法操作比較簡便,另一種方法通過編譯來安裝,本文重點給大家講解第一種方法,感興趣的朋友跟隨小編一起看看吧2021-11-11
nodejs中art-template模板語法的引入及沖突解決方案
本篇文章主要介紹了nodejs中art-template模板語法的引入及沖突解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11
node.js三個步驟實現(xiàn)一個服務器及Express包使用
這篇文章主要介紹了node.js三個步驟實現(xiàn)一個服務器及Express包使用,文章通過新建一個文件展開全文內容,具有一定的參考價值,需要的小伙伴可以參考一下2022-05-05
node.js?express和koa中間件機制和錯誤處理機制
這篇文章主要介紹了node.js?express和koa中間件機制和錯誤處理機制,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-07-07
Node.js環(huán)境下JavaScript實現(xiàn)單鏈表與雙鏈表結構
Node環(huán)境下通過npm可以獲取list的幾個相關庫,但是我們這里注重于自己動手實現(xiàn),接下來就一起來看一下Node.js環(huán)境下JavaScript實現(xiàn)單鏈表與雙鏈表結構2016-06-06

