Node.js domain 模块
-
domain 模块
Node.js domain 模块用于拦截未处理的错误。这些未处理的错误可以使用内部绑定或外部绑定来拦截。如果根本不处理错误,那么它们只会使Node应用程序崩溃。- 内部绑定 -错误发射器正在域的run方法内执行其代码。
- 外部绑定 -错误发射器使用其添加方法显式添加到域。
可以使用以下语法导入该模块。domain 模块的 domain 类用于向活动域对象提供路由错误和未捕获的异常的功能。它是EventEmitter的子类。要处理它捕获的错误,请侦听其错误事件。它使用以下语法创建- -
方法
方法 说明 domain.run(function) 在域的上下文中运行提供的功能,隐式绑定在该上下文中创建的所有事件发射器,计时器和lowe evel请求。这是使用域的最基本方法。 domain.add(emitter) 明确将发射器添加到域中。如果由发射器调用的任何事件处理程序引发错误,或者如果发射器发出错误事件,则将其路由到域的错误事件,就像隐式绑定一样。 domain.remove(emitter) 与domain.add(emitter)相反。从指定的发射器删除域处理 domain.bind(callback) 返回的函数将是提供的回调函数的包装。调用返回的函数时,引发的任何错误都将路由到域的错误事件。 domain.intercept(callback) 此方法几乎与domain.bind [回调函数]相同。但是,除了捕获引发的错误外,它还将拦截作为第一个参数发送给函数的Error对象。 domain.enter() enter方法是运行,绑定和拦截方法用来设置活动域的管道。它将domain.active和process.domain设置为该域,并将该域隐式推送到由域模块管理的域堆栈上(有关域堆栈的详细信息,请参阅domain.exit())。输入调用界定了绑定到域domain的一系列异步调用和I / O操作的开始。exit()exit方法退出当前域,将其从域堆栈中弹出。每当执行切换到不同的异步调用链的上下文时,确保退出当前域就很重要。出口的调用界定了绑定到域的异步调用和I / O操作链的结束或中断。 domain.dispose() 一旦调用dispose,该域将不再被通过运行,绑定或拦截绑定到该域的回调使用,并且将发出一个dispose事件。 -
属性
以下是domain.resolve()方法使用的有效rrtype列表-属性 说明 domain.members 已明确添加到域中的计时器和事件发射器的数组。 -