繁体   English   中英

带有回调的Node.js setTimeout

[英]Node.js setTimeout with callbacks

我正在运行一个node.js应用,并且有一个每500毫秒运行一次的进程。 有很多逻辑要做,有时我们发现它可以运行500毫秒以上-这在使用setInterval时引起问题。

我们将其重新设计为将setTimeout与这样的回调一起使用:

    var start = function() {

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

    start();

问题是有时这会停止,这意味着在路上的某个地方没有遇到来自performProcesses的回调。 成千上万的代码行可以到达多个对象和文件。

有人会推荐一种好的方法来尝试调试此问题并隔离中断的位置吗?

谢谢!

当我用JavaScript编程时,我使用Aptana 它是名为Appcelerator的集合的一部分,该集合几乎是Eclipse。 Aptana让您使用JavaScript开发和调试,因此您可以使用StepInto,StepOver等。

您是否尝试过网络检查器

您也可以在循环控制中尝试Paul Irish动画补片 如果在self.performProcess之后调用requestAnimFrame ,它将以500ms的间隔被调用。

var requestAnimFrame = function (callback) { setTimeout(callback, 500); };

(function animloop () {
  self.performProcesses();
  requestAnimFrame(animloop);
})();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM