blob: 2d7664ab6ce539fc473594e025969c60f1bdf5ca [file] [log] [blame]
// +build ignore,OMIT
package main
import (
"fmt"
"time"
)
// STARTMAIN1 OMIT
type Ball struct{ hits int }
func main() {
table := make(chan *Ball)
go player("ping", table)
go player("pong", table) // HL
table <- new(Ball) // game on; toss the ball
time.Sleep(1 * time.Second)
<-table // game over; grab the ball
}
func player(name string, table chan *Ball) {
for i := 0; ; i++ {
ball := <-table
ball.hits++
fmt.Println(name, i, "hit", ball.hits)
time.Sleep(100 * time.Millisecond)
table <- ball
}
}
// STOPMAIN1 OMIT