Node.js Domain 模块实例详解

 更新时间:2020年03月18日 15:42:37   作者:麦叶  
这篇文章主要介绍了Node.js Domain 模块实例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

Node.js Domain(域) 简化异步代码的异常处理,可以捕捉处理try catch无法捕捉的异常。

Domain 模块可分为隐式绑定和显式绑定:

  • 隐式绑定: 把在domain上下文中定义的变量,自动绑定到domain对象
  • 显式绑定: 把不是在domain上下文中定义的变量,以代码的方式绑定到domain对象

创建domain.js,代码如下:

var eventEmitter=require("events").EventEmitter;
var domain=require("domain");
var emitter1=new eventEmitter();
//创建域
var domain1=domain.create();
domain1.on("error",function(err){
  console.log("domain1来处理这个错误:"+err.message);
})
//显示绑定
domain1.add(emitter1);
//添加emitter1对error的监听
emitter1.on("error",function(err){
  console.log("emitter1来处理这个错误:"+err.message);
})
emitter1.emit("error",new Error("触发错误,指定由emitter1处理"));
emitter1.removeAllListeners("error");//移除emitter1对error的监听
emitter1.emit("error",new Error("触发错误,指定由domain1处理"));
//创建域
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("触发错误,指定由domain2处理"));
})
domain1.remove(emitter1);
emitter1.emit("error",new Error("触发错误,系统将崩溃"));

总结

到此这篇关于Node.js Domain 模块实例详解的文章就介绍到这了,更多相关node.js domain 模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nodejs做个爬虫爬取腾讯动漫内容简单实现

    nodejs做个爬虫爬取腾讯动漫内容简单实现

    这篇文章主要为大家介绍了nodejs做个爬虫爬取腾讯动漫内容简单实现,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • node.js中express中间件body-parser的介绍与用法详解

    node.js中express中间件body-parser的介绍与用法详解

    这篇文章主要给大家介绍了关于node.js中express中间件body-parser的相关资料,文章通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-05-05
  • 从零学习node.js之模块规范(一)

    从零学习node.js之模块规范(一)

    Node.js是一个基于谷歌浏览器JavaScript执行环境建立的一个平台,让JavaScript可以脱离客户端浏览器运行,让 JavaScript具有服务器语言的能力。从本文开始我们进行学习node.js,这篇文章主要介绍的是node.js中模块规范的相关资料,需要的朋友可以参考下。
    2017-02-02
  • Node.js的MongoDB驱动Mongoose基本使用教程

    Node.js的MongoDB驱动Mongoose基本使用教程

    这篇文章主要介绍了Node.js的MongoDB驱动Mongoose的基本使用教程,前端js+后端Node.js+数据库MongoDB是当下流行的JavaScript全栈开发方案,需要的朋友可以参考下
    2016-03-03
  • 使用VS开发 Node.js指南

    使用VS开发 Node.js指南

    这篇文章主要介绍了使用VS开发 Node.js的方法,主要是使用NTVS(Node.js Toolsfor Visual Studio)来实现,有需要的小伙伴参考下
    2015-01-01
  • socket.io实现在线群聊功能

    socket.io实现在线群聊功能

    这篇文章主要为大家详细介绍了socket.io实现在线群聊功能的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • node.js中ws模块创建服务端与客户端实例代码

    node.js中ws模块创建服务端与客户端实例代码

    在Node.js中提供了http模块与https模块,专用于创建HTTP服务器、HTTP客户端,以及HTTPS服务器及HTTPS客户端,同时实现这些服务器端与客户端之中所需进行的处理,下面这篇文章主要给大家介绍了关于node.js中ws模块创建服务端与客户端的相关资料,需要的朋友可以参考下
    2023-05-05
  • NodeJS整合银联网关支付(DEMO)

    NodeJS整合银联网关支付(DEMO)

    这篇文章主要介绍了NodeJS整合银联网关支付DEMO的相关资料非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • 使用Node.js构建微服务的方法

    使用Node.js构建微服务的方法

    这篇文章主要介绍了使用Node.js构建微服务,将介绍微服务架构、优势以及如何使用Node.js开发微服务,需要的朋友可以参考下
    2022-08-08
  • Node中fs文件系统模块的使用方法详解

    Node中fs文件系统模块的使用方法详解

    fs 模块是 Node.js 官方提供的、用来操作文件的模块(内置api),它提供了一系列的方法和属性,用来满足用户对文件的操作需求,本文给大家介绍了Node中fs文件系统模块的使用方法,需要的朋友可以参考下
    2024-03-03

最新评论