Когда я использовал функцию async.until(), я заметил, что тест не вызывает повторного вызова, хотя возвращает false. В результате функция не вызывается для выполнения следующей задачи.В функции проверки async.until (тест, функция, обратный вызов) не вызывается повторно
var resultReceived = false;
async.until(function(){
console.log("Checking result : "+resultReceived);
return resultReceived;
}, function(callback){
try{
//do something
resultReceived = true;
}catch(err){
resultReceived = false;
}
}, function(result){
console.log("====================");
console.log(result);
callback(result);
});
Да - это происходит потому, что асинхронная означает, что он не ждет, пока предыдущее выполнение, чтобы завершить, прежде чем начать следующий - см. этот ответ http://stackoverflow.com/questions/748175/asynchronous-vs-synchronous-execution-what-does-it-really-mean – mike510a
Да, я понимаю. но если вы проверите эту документацию [https://caolan.github.io/async/docs.html#until], она сообщит, что она повторно вызывает главную функцию до тех пор, пока тест не вернет true. Вот почему мне было интересно. – Angshuman