美文网首页
nodejs中的串行无关联和并行无关联

nodejs中的串行无关联和并行无关联

作者: YI_YI_ | 来源:发表于2018-03-08 13:08 被阅读0次

    //1:引入需要的模块
    var async = require("async");
    //为了记录这段程序运行的时间
    console.time("time");
    /**

    • 下面介绍的是串行无关联
      /
      //1)、串行无关联--数组的形式
      /
      async.series(
      [
      //函数1
      function(callback){
      setTimeout(function(){
      callback(null,"first...");
      },2000)
      },
      //函数2
      function(callback){
      setTimeout(function(){
      callback(null,"second...");
      },2000)
      }
      ],
      //回调函数
      function(err,result){
      console.log(result);
      console.timeEnd("time");

    });
    /
    /

    结果的显示:
    olivadeMacBook-Pro:串行无关联 oliva$ node index
    [ 'first...', 'second...' ]
    time: 4017.429ms
    /
    //2)、串行无关联--对象的形式
    /
    async.series(
    {
    //函数1
    "one":function(callback){
    setTimeout(function(){
    callback(null,"first...");
    },2000)
    },
    //函数2
    "two":function(callback){
    setTimeout(function(){
    callback(null,"second...");
    },2000)
    }

    }
    
    ,
     //回调函数
    function(err,result){
        console.log(result);
        console.timeEnd("time");
    

    });*/

    /*
    结果的显示:
    olivadeMacBook-Pro:串行无关联 oliva$ node index
    { one: 'first...', two: 'second...' }
    time: 4014.632ms
    /
    /
    *

    • 下面介绍的是:并行无关联
      /
      //1)、并行无关联--数组的形式
      /

      async.parallel(
      [
      //函数1
      function(callback){
      setTimeout(function(){
      callback(null,"first...");
      },2000)
      },
      //函数2
      function(callback){
      setTimeout(function(){
      callback(null,"second...");
      },2000)
      }
      ],
      //回调函数
      function(err,result){
      console.log(result);
      console.timeEnd("time");

    });
    /
    /
    *

    • 结果的显示:

    • olivadeMacBook-Pro:串行无关联 oliva$ node index
      [ 'first...', 'second...' ]
      time: 2006.115ms
      /
      //2)、并行无关联--对象的形式
      /

      async.parallel(
      {
      //函数1
      "one":function(callback){
      setTimeout(function(){
      callback(null,"first...");
      },2000)
      },
      //函数2
      "two":function(callback){
      setTimeout(function(){
      callback(null,"second...");
      },2000)
      }

      }

      ,
      //回调函数
      function(err,result){
      console.log(result);
      console.timeEnd("time");

    });*/

    /**

    • 结果的显示:
    • olivadeMacBook-Pro:串行无关联 oliva$ node index
      { one: 'first...', two: 'second...' }
      time: 2010.268ms
      重点是时间的减少表明了程序的并行
      */

    相关文章

      网友评论

          本文标题:nodejs中的串行无关联和并行无关联

          本文链接:https://www.haomeiwen.com/subject/vlfyfftx.html