node异步操作流程控制async

对于很多操作node与传统的php是不同的,比如上传文件(假设基本步骤是上传文件,写入磁盘,入库),php是按照顺序执行的,但是node很多步骤都是异步运行的,这样会出问题,因为可能文件还没上传成功就执行了写入磁盘或入库操作。所以需要了解下node的异步流程控制了。

异步流程控制对象async常用方法:(注意需要先安装async,安装方法:npm install async --save-dev)
1.串行无关联:async.series (按着步骤顺序执行,但是每个步骤运行结果是没有关联的)
2.并行无关联:async.parallel (所有异步操作并行执行,等所有操作都完成后在一起处理)
3.串行有关联:waterfall (第一步的运行结果会传给第二步,第二步运行结果会发给第三部...)
4.parallelLimit并发限制 (与async.parallel相似,但是多一个限制,任务同时只能并发一定数量,不是无限的)

猜你喜欢

转载自blog.csdn.net/abiao555/article/details/108290641