1刚操、切換
package main
import "fmt"
import "time"
func genData1(ch chan int) {
for i :=2; ; i++ {
ch <- i * 2
}
}
func genData2(ch chan int) {
for i :=2; ; i++ {
ch <- i / 2
}
}
func getData(ch1 chan int, ch2 chan int) {
for {
select {
case v := <-ch1:
fmt.Printf("Received on channel 1: %d\n", v)
case v := <-ch2:
fmt.Printf("Received on channel 2: %d\n", v)
}
}
}
func main() {
ch1 := make(chan int)
ch2 := make(chan int)
go genData1(ch1)
go genData2(ch2)
go getData(ch1, ch2)
time.Sleep(1e9)
}