Node.js – 即时定时器类

立即定时器类用于调度的功能,我们需要在时间在未来一段时间内打电话。这些任务可以通过使用 Immediate timer 类和setImmediate()方法进行调度。该立即类的一个目的setImmediate()方法并把它传递相同的目的是clearImmediate()在情况下,它要取消所安排的定时器功能。

下面给出的是直接类引用对象 -

1. immediate.ref()

如果直接对象活动时间过长且未退出,则调用此方法。

语法

immediate.ref()

2. immediate.unref()

该对象使事件循环保持“活动”状态,直到返回 False 为止,这将中断循环。

语法

immediate.Unref()

示例

创建一个名为“immediate.js”的文件并复制以下代码片段。创建文件后,使用命令“节点立即.js”运行此代码。

// 立即定时器类演示示例

// 通过 setImmediate 方法设置立即
var Immediate = setImmediate(function immediate() {
   console.log("0.>",12);
});

// 在 unref 之前打印Immediate.ref
console.log("1. ",Immediate.ref());

// 打印Immediate.unrefmethod
console.log("2. ",Immediate.unref());

// 立即清除 setInterval
clearImmediate(Immediate);

// 清除后立即打印
console.log("3. ","Thank you !");
输出结果
1. Immediate {
   _idleNext: null,
   _idlePrev: null,
   _onImmediate: [Function: immediate],
   _argv: undefined,
   _destroyed: false,
   [Symbol(refed)]: true,
   [Symbol(asyncId)]: 5,
   [Symbol(triggerId)]: 1 }
2. Immediate {
   _idleNext: null,
   _idlePrev: null,
   _onImmediate: [Function: immediate],
   _argv: undefined,
   _destroyed: false,
   [Symbol(refed)]: false,
   [Symbol(asyncId)]: 5,
   [Symbol(triggerId)]: 1 }
3. Thank you !