User Tools

Site Tools


cs_lang:go

This is an old revision of the document!


Learning Go

Simple examples

Sum the elements of a list

package main
 
import "fmt"
 
func sum(a []int, c chan int) {
    sum := 0
    for _, v := range a {
        sum += v
    }
    c <- sum  // send sum to c
}
 
func main() {
    a := []int{7, 2, 8, -9, 4, 0}
 
        c := make(chan int)
    go sum(a[:len(a)/2], c)
    go sum(a[len(a)/2:], c)
        x, y := <-c, <-c  // receive from c
 
    fmt.Println(x, y, x + y)
}

Books

cs_lang/go.1334991762.txt.gz · Last modified: 2012/04/21 09:02 by cedric