async.mapLimit 控制并发数量

巧了我就是萌 提交于 2020-03-10 05:14:00

async无论我们在哪里接受Node样式的回调函数,异步都接受函数。但是,我们不向它们传递回调,而是使用返回值并处理所有的Promise拒绝或引发的错误

const async = require('async');
(async () => {
    // 支持数组格式
    let list = [{
        'url': '1',
    }, {
        'url': '2',
    }];

    //数字10是并发数量
    async.mapLimit(list, 10, async item => { // <- no callback!
        let data = await toUrl(item);
        return data; // <- return a value!
    }, (err, contents) => {
        if (err) throw err;
        console.log(contents);
    });
})();

async function toUrl(item) {

    // 。。。 写处理逻辑
    console.log(item);
    return '处理完成';
}

文档来源:https://caolan.github.io/async/v3/

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!