一尘不染

node.js事件循环诊断

node.js

可以偷看事件循环进行诊断吗?

我想知道当前有多少事件在等待执行(不包括setTimeout / interval)。

更新:我想从正在运行的节点进程内部执行此操作。


阅读 223

收藏
2020-07-07

共1个答案

一尘不染

使用setImmediate()为nodejs 0.10更新

虽然无法在队列中找到等待事件的数量,但发现了另一个可能有用的运行状况指标:

var ts=Date.now();
setImmediate(function()
{
  var delay=Date.now()-ts;
});

延迟将包含从排队事件到执行事件所花费的毫秒数。

这也考虑到了CPU密集型事件(仅查看事件数是不可能的)。

测量本身也将影响事件队列,但是其开销应比完整的探查器低得多。

2020-07-07