async.eachLimit什么时候执行结束呢
发布于 7 年前 作者 IAMABOY 2510 次浏览 来自 问答

async.eachLimit(g_strLineAry,100,funcGetOneLine, funcGotAllLines);中当funcGetOneLine出现callback()之后,则选取g_strLineAry数组中下一组100个数据执行funcGetOneLine函数,正常的话g_strLineAry里面的数据读取完毕之后,会执行funcGotAllLines,但是程序结束了funcGotAllLines还没有执行,是为什么?

// 处理一行内容的动作 function funcGetOneLine(strLine, callback) { // console.log (‘forEachSeries:’ + strLine); // 不处理空行 if (!strLine) { g_iNullLineCount ++; return; } g_iNotNullLineCount ++; console.log(‘ccccccccccccccccccccccccccccccccccccccccccccccccc:’+strLine);

setTimeout(function(){ callback(); return; },1000); }

1 回复

原因找到了,是我没有处理空行, if (!strLine) { g_iNullLineCount ++; return; } 加上callback();就可以了,即 if (!strLine) { g_iNullLineCount ++; callback(); return; }

回到顶部