level 8
此ID已被我抢注
楼主
> 刚有个小哥说generator promise跟async/await不能比
我也是呵呵地根据golang 的协程goroutine channel 等写了个go-co,名字取自tj 的 co
实例
import "github.com/magicdawn/go-co"
import 之后就有
co.Task
co.Await
co.Async
存在了
例如,查询数据库是耗时操作,包装成一个Task,跟nodejs里面包装成一个Promise 是一样的
func queryDb(sql string) co.Task {
return co.Async(func() interface{}{
// exec sql
})
}
这里co.Async 新开一个协程,
使用 res := co.Await(t) 等待这个协程,阻塞当前协程,可以理解为thread.join
2015年05月13日 08点05分
1
我也是呵呵地根据golang 的协程goroutine channel 等写了个go-co,名字取自tj 的 co
实例
import "github.com/magicdawn/go-co"
import 之后就有
co.Task
co.Await
co.Async
存在了
例如,查询数据库是耗时操作,包装成一个Task,跟nodejs里面包装成一个Promise 是一样的
func queryDb(sql string) co.Task {
return co.Async(func() interface{}{
// exec sql
})
}
这里co.Async 新开一个协程,
使用 res := co.Await(t) 等待这个协程,阻塞当前协程,可以理解为thread.join