0
我有一个函数,我需要调用一些时间,而不是使用for循环,我使用的是async.whilst。但是我需要的是,在前一个调用完成之前,下一次调用函数并不会发生,这与async.whys不同。有没有一种方法来实现这一点(我使用setTimeout来暂停每次通话,但它不是很干净)。 非常感谢,Casync.whilst - 在调用之间暂停
我有一个函数,我需要调用一些时间,而不是使用for循环,我使用的是async.whilst。但是我需要的是,在前一个调用完成之前,下一次调用函数并不会发生,这与async.whys不同。有没有一种方法来实现这一点(我使用setTimeout来暂停每次通话,但它不是很干净)。 非常感谢,Casync.whilst - 在调用之间暂停
我会使用forever构造。假设你的函数的名字myFunction的和接受作为参数的回调:
var count = 0;
var limit = 10; // set as number of the execution of the function
async.forever(
function(next) {
myFunction(function() {
count++;
if(count < limit) {
next();
} else {
next(true);
}
})
},
function(ended) {
// function calling iteration ended
}
);
非常感谢 - 它似乎这样做。 NodeJS是一个非常不同的范例,因此它需要一些时间来适应它... C – Christian68
始终共享代码,这将更好地知道确切的问题 – abdulbarik
我会尝试重写代码,所以我可以用'eachLimit',但依赖的你的代码。或递归。 – DrakaSAN