你们那么多 workgroup 都在写啥?
其实不就是欺负 Go 少个 sum 函数?
package main
import "fmt"
func sum(max int) int {
ch := make(chan int, max)
// Map
for i := range make([]int, max) {
go func(j int, ch chan int) {
ch <- j * j
}(i+1, ch)
}
// Reduce
s := 0
for x := 0; x < max; x++ {
s += <-ch
}
return s
}
func main() {
fmt.Println(sum(10))
}