diff --git a/book_with_bridge/ping-pong/main.go b/book_with_bridge/ping-pong/main.go new file mode 100644 index 0000000..f9fef72 --- /dev/null +++ b/book_with_bridge/ping-pong/main.go @@ -0,0 +1,36 @@ +package main + +import ( + "fmt" + "time" +) + +func main() { + count := 1 + side1 := make(chan int) + side2 := make(chan int) + + tick := time.NewTicker(1*time.Second) + + go func(){ + for range side1 { + fmt.Println("Tick") + } + }() + + go func() { + for range side2 { + fmt.Println("Tack") + } + }() + + for range tick.C { + if count % 2 == 0 { + side2 <- 1 + count = 1 + } else { + side1 <- 1 + count++ + } + } +}