gobyexample/038-directions.go
Mark McGranaghan 354a9d862f reorder
2012-09-21 07:54:20 -07:00

36 lines
562 B
Go

package main
import "fmt"
func pinger(pings chan<- string) {
for i := 0; i <= 10; i++ {
pings <- "ping"
}
}
func ponger(pings <-chan string, pongs chan<- string) {
for {
<- pings
pongs <- "pong"
}
}
func printer(pongs <-chan string) {
for {
msg := <- pongs
fmt.Println(msg)
}
}
func main() {
var pings chan string = make(chan string)
var pongs chan string = make(chan string)
go pinger(pings)
go ponger(pings, pongs)
go printer(pongs)
var input string
fmt.Scanln(&input)
}