带有callback的Node.js setTimeout

我正在运行一个node.js应用程序,并且每500毫秒运行一个进程。 有很多逻辑正在完成,有时候,我们发现它可能会运行超过500毫秒 – 这导致使用setInterval时出现问题。

我们重新devise了这个使用setTimeout的callback,如下所示:

var start = function() { self.performProcesses(function() { setTimeout(function() { start(); }, 500); }); } start(); 

问题是有时候会停下来,意味着沿着这条路的某个地方从performProcessescallback没有被击中。 有成千上万的代码行可以到达多个对象和文件。

有人会推荐一个好的方法来尝试debugging,并隔离哪里可能是rest吗?

谢谢!

你有没有试过networking督察 ?

你也可以尝试保罗爱尔兰anim垫圈控制。 如果在self.performProcess之后调用requestAnimFrame ,它将以500ms的间隔被调用。

 var requestAnimFrame = function (callback) { setTimeout(callback, 500); }; (function animloop () { self.performProcesses(); requestAnimFrame(animloop); })(); 

当我用JavaScript编程时,我使用Aptana 。 它是一个名为Appcelerator的集合的一部分,这几乎是Eclipse。 Aptana让你用JavaScript开发和debugging,所以你可以StepInto,StepOver等等。