GoWithTheFlow
GoWithTheFlow
http://notes.jetienne.com/2011/07/17/gowiththeflow.js-async-flow-control-with-a-zen-touch.html
https://github.com/jeromeetienne/gowiththeflow.js
GoWithTheFlow.js是一个异步的流控制库,可运行在node.js和浏览器中。它可以控制如何执行异步的代码,可以让它们异步或者同步执行,这个库很小,才30多行。
如何使用它
有2块代码需要顺序执行。第一块代码中含有timeout(),这个函数是异步的。所以输出的结果并不是完全顺序的。有了GoWithTheFlow.js可以使第二块代码在第一块代码完全执行之后再执行。Demo
GoWithTheFlow只有两个方法,seq()就是使function顺序的执行,par()则是同步执行。
seq()中的回调函数只有在所有先前的工作就执行完毕才会执行,回调函数的基本格式是callback(next,error,result) error和result是可以省去的 next是一个函数
- next(error,result) 调用next就是执行下一块代码
- error是前一块代码产生的错误
- result是前一块代码传来的信息
总的来说,就是将需要顺序执行的代码块放在seq中,在代码块结束的位置写上next() 就会顺序执行,而next()就是调用flow的下一任务
GoWithTheFlow的更多相关文章
- 异步流程控制库GoWithTheFlow
异步流程控制库GoWithTheFlow 一个尾触发方式来控制异步流程的库, 有seq(顺序执行) par(同步执行) 两种方法 博客 http://notes.jetienne.com/2011/0 ...
随机推荐
- 【Linux学习】Ubuntu下嵌入式交叉编译环境arm-linux-gcc搭建
(1)首先选择一个路径用来存放arm-linux-gcc.我选用的是/home/book,并在以下建立一个目录arm-linux-gcc. (2)利用cp EABI-4.3.3_Emdedsky_20 ...
- C#Excel导出导入
using System; using System.Collections.Generic; using NPOI; using NPOI.HPSF; using NPOI.HSSF; using ...
- 浅谈Mybatis(二)
一.resultMap 作用:发现数据库的查询结果与实体之间不匹配时,需要通过ResultMap来进行映射处理.常用于多表查询. 多表查询还是比较复杂的,因为可能的情况很多.这里只说两种情况: 1.1 ...
- socket中的option
/// Set an option on the socket. /** * This function is used to set an option on the socket. * * @pa ...
- Lua for Windows入门01
由于项目紧急,我都没来得及研究lua的基本知识就直接持枪上阵了.在实施编写的过程中,却次发现编程语言如此之美,第一次. 随着Lua+for+Windows+5.1.4-45版本的完全安装,最后跳出了一 ...
- Hive操作之HQL语句
HQL操作1.Distribute by distribute by col按照col列把数据分散到不同的reduce sort sort by col 按照col列把数据排序 ...
- MarkDown使用 (三)表格
MarkDown表格的用法 MarkDown表格的用法 例如: $$ \begin{array}{c|lcr} n & \text{Left} & \text{Center} & ...
- android双击返回键退出程序
今天给大家简单说一下,android双击返回键退出程序. @Override public boolean onKeyDown(int keyCode, KeyEvent event) { ...
- call和apply方法的理解
第一种:直接先来个粟子吧... ; } var child = {}; console.log(child); //Object() 对象 Parent.call(child); console. ...
- python+sublime text2中文乱码[Decode error - output not utf-8]
转自: http://blog.sina.com.cn/s/blog_765abd7b0101dtbw.html 学习,记录一下.中文编码真的挺麻烦.抽空把自己的sb3的配置写一些. 该问题让我纠结了 ...