因为我使用Node.js的时间不长,我遇到了以下问题.我理解使用回调驱动的范例我们需要将我们在同步代码中使用的循环转换为递归.我的问题是我无法理解递归的深度节点,不同测试的结果是不一致的.例如,我尝试了在网上找到的代码:
var depth = 0;
(function recurseBaby() {
// log at every 500 calls
(++depth % 500) || console.log(depth);
// bail out ~100K depth in case you're special and don't error out
if (depth > 100000) return;
recurseBaby();
})();
Run Code Online (Sandbox Code Playgroud)
它在18500次递归后给出了节点异常(最大递归深度).所以我尝试添加一些功能,比如使用队列:
var depth = 0,
Memcached = require('memcached'),
memcacheq = new Memcached('127.0.0.1:22201');
(function recurseBaby() {
// log at every 500 calls
(++depth % 500) || console.log(depth);
// bail out ~10M depth in case you're special and don't error out
if (depth …Run Code Online (Sandbox Code Playgroud)