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

//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中的串行无关联和并行无关联)