Node.js Domain 模塊實(shí)例詳解
Node.js Domain(域) 簡(jiǎn)化異步代碼的異常處理,可以捕捉處理try catch無(wú)法捕捉的異常。
Domain 模塊可分為隱式綁定和顯式綁定:
- 隱式綁定: 把在domain上下文中定義的變量,自動(dòng)綁定到domain對(duì)象
- 顯式綁定: 把不是在domain上下文中定義的變量,以代碼的方式綁定到domain對(duì)象
創(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來(lái)處理這個(gè)錯(cuò)誤:"+err.message); }) //顯示綁定 domain1.add(emitter1); //添加emitter1對(duì)error的監(jiān)聽(tīng) emitter1.on("error",function(err){ console.log("emitter1來(lái)處理這個(gè)錯(cuò)誤:"+err.message); }) emitter1.emit("error",new Error("觸發(fā)錯(cuò)誤,指定由emitter1處理")); emitter1.removeAllListeners("error");//移除emitter1對(duì)error的監(jiān)聽(tīng) emitter1.emit("error",new Error("觸發(fā)錯(cuò)誤,指定由domain1處理")); //創(chuàng)建域 var domain2=domain.create(); domain2.on("error",function(err){ console.log("domain2來(lái)處理這個(gè)錯(cuò)誤:"+err.message); }) //隱式綁定 domain2.run(function(){ var emitter2=new eventEmitter(); emitter2.emit("error",new Error("觸發(fā)錯(cuò)誤,指定由domain2處理")); }) domain1.remove(emitter1); emitter1.emit("error",new Error("觸發(fā)錯(cuò)誤,系統(tǒng)將崩潰"));
總結(jié)
到此這篇關(guān)于Node.js Domain 模塊實(shí)例詳解的文章就介紹到這了,更多相關(guān)node.js domain 模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JavaScript DOM操作表格及樣式
- JavaScript與DOM組合動(dòng)態(tài)創(chuàng)建表格實(shí)例
- JavaScript DOM 學(xué)習(xí)第三章 內(nèi)容表格
- JavaScript 學(xué)習(xí)筆記(十三)Dom創(chuàng)建表格
- 詳解用js代碼觸發(fā)dom事件的實(shí)現(xiàn)方案
- 通過(guò)js隨機(jī)函數(shù)Math.random實(shí)現(xiàn)亂序
- JavaScript監(jiān)聽(tīng)一個(gè)DOM元素大小變化
- JavaScript 實(shí)現(xiàn)HTML DOM增刪改查操作的常見(jiàn)方法詳解
- JS如何操作DOM基于表格動(dòng)態(tài)展示數(shù)據(jù)
相關(guān)文章
nodejs做個(gè)爬蟲(chóng)爬取騰訊動(dòng)漫內(nèi)容簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家介紹了nodejs做個(gè)爬蟲(chóng)爬取騰訊動(dòng)漫內(nèi)容簡(jiǎn)單實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07node.js中express中間件body-parser的介紹與用法詳解
這篇文章主要給大家介紹了關(guān)于node.js中express中間件body-parser的相關(guān)資料,文章通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-05-05從零學(xué)習(xí)node.js之模塊規(guī)范(一)
Node.js是一個(gè)基于谷歌瀏覽器JavaScript執(zhí)行環(huán)境建立的一個(gè)平臺(tái),讓JavaScript可以脫離客戶端瀏覽器運(yùn)行,讓 JavaScript具有服務(wù)器語(yǔ)言的能力。從本文開(kāi)始我們進(jìn)行學(xué)習(xí)node.js,這篇文章主要介紹的是node.js中模塊規(guī)范的相關(guān)資料,需要的朋友可以參考下。2017-02-02Node.js的MongoDB驅(qū)動(dòng)Mongoose基本使用教程
這篇文章主要介紹了Node.js的MongoDB驅(qū)動(dòng)Mongoose的基本使用教程,前端js+后端Node.js+數(shù)據(jù)庫(kù)MongoDB是當(dāng)下流行的JavaScript全棧開(kāi)發(fā)方案,需要的朋友可以參考下2016-03-03node.js中ws模塊創(chuàng)建服務(wù)端與客戶端實(shí)例代碼
在Node.js中提供了http模塊與https模塊,專用于創(chuàng)建HTTP服務(wù)器、HTTP客戶端,以及HTTPS服務(wù)器及HTTPS客戶端,同時(shí)實(shí)現(xiàn)這些服務(wù)器端與客戶端之中所需進(jìn)行的處理,下面這篇文章主要給大家介紹了關(guān)于node.js中ws模塊創(chuàng)建服務(wù)端與客戶端的相關(guān)資料,需要的朋友可以參考下2023-05-05NodeJS整合銀聯(lián)網(wǎng)關(guān)支付(DEMO)
這篇文章主要介紹了NodeJS整合銀聯(lián)網(wǎng)關(guān)支付DEMO的相關(guān)資料非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11