zoukankan      html  css  js  c++  java
  • nodejs async

    官网:https://github.com/caolan/async

    流程控制:简化十种常见流程的处理
    集合处理:如何使用异步操作处理集合中的数据
    工具类:几个常用的工具类

    流程控制

    详细说明:http://my.oschina.net/huangsz/blog/176203

    series(tasks, [callback]) 多个函数依次执行,之间没有数据交换,仅仅需要保证执行顺序

    parallel(tasks, [callback]) (多个函数并行执行)

    waterfall(tasks, [callback]) (多个函数依次执行,且前一个的输出为后一个的输入)

    最后一个函数是,如果之前的函数出错的话,才会执行。如果函数数据最后一个函数,执行cb(),则也会执行最后一个函数。

    async.waterfall([
    		function(cb){
    			console.log('1 brefore');
    			cb(null, 1);
    			console.log('1 after');
    		},
    		function(result){
    			console.log('2:'+result);
    		}
    		], function(err, value){
    			console.log('err:'+err);
    			console.log('value:'+value);
    		})
    

    输出结果是:1 brefore;1 after;2:1;

    说明cb()执行完后,还会执行下面的语句;cb跟return不同。

    cb(argu1, argu2):可以传多个参数

    auto(tasks, [callback]) (多个函数有依赖关系,有的并行执行,有的依次执行)

    whilst(test, fn, callback)(用可于异步调用的while)

    until(test, fn, callback) (与while相似,但判断条件相反)

    queue (可设定worker数量的队列)

    iterator(tasks) (将几个函数包装为iterator)

    apply(function, arguments..) (给函数预绑定参数)

    nextTick(callback) (在nodejs与浏览器两边行为一致)

    each是全部执行并等待全部完成后返回,中间如果有错误就不等全部完成就立即返回。

  • 相关阅读:
    强化学习_PolicyGradient(策略梯度)_代码解析
    leetcode_1053. Previous Permutation With One Swap
    leetcode_1052. Grumpy Bookstore Owner
    Tensorflow_入门学习_2_一个神经网络栗子
    通过批处理快速设置IP
    汇编、编译、反汇编、反编译的简单概念介绍
    Logistic回归
    基于概率论的分类方法:朴素贝叶斯
    决策树 预测隐形眼镜类型
    k-近邻算法2(kNN)手写识别系统
  • 原文地址:https://www.cnblogs.com/wang-jing/p/4834834.html
Copyright © 2011-2022 走看看