2

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

我们重新设计了它以使用带有回调的 setTimeout,例如:

    var start = function() {

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

    start();

问题是有时会停止,这意味着沿途某处回调performProcesses没有被击中。有数千行代码可以访问多个对象和文件。

有人会推荐一个好方法来尝试调试它并隔离可能中断的位置吗?

谢谢!

4

2 回答 2

0

你试过web-inspector吗?

您还可以在循环控制中尝试使用 Paul Irish anim shim 。如果你调用requestAnimFrameafter self.performProcess,它将以 500ms 的间隔调用。

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

(function animloop () {
  self.performProcesses();
  requestAnimFrame(animloop);
})();
于 2012-07-05T01:06:23.617 回答
0

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

于 2012-07-03T16:11:45.503 回答