前言 你如果熟悉go ,fiber (对于fiber可以简单理解成为轻量级线程)和 channel 就对应go 的goroutines 和channel,在go语言中用法如下: package main import "fmt" func sum(s []int, c chan int) { //方法执行体 sum := 0 for _, v := range s { sum += v } c <- sum // send sum to c } func main() { //main 函数 s := []int{7, 2, 8, -9, 4, 0} // 构建一个数组 c := make(chan int) //新建一个channel go sum(s[:len(s)/2], c) // 新起一个协程,然后在协程中执行方法,相当于new 一个fiber go sum(s[len(s)/2:], c) // new 一个fiber 。。 x, y := <-c, <-c // receive from c // 通过channel来传递消息 fmt.Println(x, y, x+y) } fiber example: Channel<Object> objectChannel = Channels.newChannel(0); // 0 ,receive() block