es6的co模块generators回调过程是否是异步的
实际编程中遇到一个问题:
var s = ...;
co(function* fn(){
// IO操作1
s = yield SomeFunc();
});
// IO操作2,没有使用generators,如事件操作等
var e = SomeOpenFileFunc();
e.on("read", (err, data) => {
console.log(data);
});
e.on("close", (err) => {
// 关闭文件
});
那么,是IO1先执行完成后再执行IO2呢(类似同步的流程),还是IO1和IO2并行执行呢(类似异步的过程)?这是个问题,有空试一下。
感觉应该是后者,我感觉co里面的那个回调是异步的,所以执行完co这一句以后就直接返回了,继续执行SomeOpenFileFunc()。
aaaaa
asdasdasd