CNode

node8.2中async.js为什么失效

问答
Zzhang14725804发布于9 年前最后回复9 年前5 回复4662 浏览0 收藏

原来node6.2的时候,我用async.js控制并发,,完全达到预期效果 现在升级到8.2,直接报错了

async.mapLimit(pages, 10, function(url, callback) {
	fetchUrl(url, callback);
}, function(err, result) {
	console.log('final:');
	console.log(result);
});

var concurrencyCount = 0;
function fetchUrl(url, callback) {
	concurrencyCount++;
	console.log('现在的并发数是', concurrencyCount, ',正在抓取的是', url);

	SpiderPage(url);

	setTimeout(function() {
		concurrencyCount--;
		callback(null, url + ' html content');
	}, 360);
};
查看回复

回复 (5)

L
libook#1·9 年前

去了解一下Node8和Node6有什么区别

I
im-here#2·9 年前

报啥错啊? 好歹也贴一个报啥错啊

Q
qingmingsang#3·9 年前

和原生async冲突了吧

S
SunilWang#4·9 年前
引用 libook去了解一下Node8和Node6有什么区别

@libook 能大概的说说吗?或者给个链接 自豪地采用 CNodeJS ionic

L
libook#5·9 年前
引用 SunilWang@libook 能大概的说说吗?或者给个链接 自豪地采用 CNodeJS ionic

@KingTree 由于没有贴出错误信息和栈信息以及代码上下文,单纯执行这段代码无法重现问题。 也有可能使用了严格模式,没有严格控制变量声明顺序和作用域。 还有可能依赖包没有升版本或重新安装,导致兼容性问题。 。。。没有调试信息无法下结论。。。 但确实Node6和Node8的区别还挺大的。

参与回复
登录后即可参与回复。登录