主要用来加深对于
goroutine
和channel
的理解吧
什么是Promise.all
Promise.all 可以将多个 Promise 实例包装成一个新的 Promise 实例。
同时,成功和失败的返回值是不同的,
成功的时候返回的是一个结果数组,而失败的时候则返回最先被 reject 失败状态的值
javascript
1 | // run1和run2函数都返回promise |
go
需要用到
协程 goroutine
和通道 channel
1 | package main |
说明
我们可以将每个
run
的实现封装为promise.New
的函数上述逻辑,可以再使用
promise.All
的函数实现GO 原生支持异步,用不着 promise,这完全是画蛇添足
但是这个主要是想针对多任务并行处理且同时结束的时机控制,加深对于
goroutine
和channel
的理解吧