Go编写的并行计算示例程序
package main
import "fmt"
const ngoroute = 1000000
func f(left, right chan int) { left <- 1 + <-right }
func main() {
leftmost := make(chan int);
var left, right chan int = nil, leftmost;
for i := 0; i < ngoroute; i++ {
left, right = right, make(chan int);
go f(left, right);
}
right <- 0;
x := <-leftmost;
fmt.Println(x);
}
《代码的未来》