Node.js:检查事件循环中剩下的事情是否阻止脚本自然退出

如果主事件循环中还有callback,Node.js脚本将不会退出。 虽然可以通过调用process.exit()强制终止脚本,或者抛出exception,但build议通过始终进行适当的清理,使脚本“自然”终止。 然而,这有时可能是困难的,因为代码中的错误可能会妨碍正确的清理,例如,我可能会忘记在不再需要时删除IntervalObject等等,这最终会阻止程序终止。

因此,有没有办法debugging一个非终止脚本来找出事件循环中剩下的内容? 换句话说,Node.js中是否有方法来debugging什么是阻止程序退出?

您可以调用process._getActiveRequests()来获取活动I / O请求的列表,并获取打开句柄/文件描述符的列表process._getActiveHandles()