标签:
Go‘s select lets you wait on multiple channel operations. Combing goroutines and channels with select is a poweful feature of Go
package main import ( "fmt" "time" ) func main() { c1 := make(chan string) c2 := make(chan string) go func() { time.Sleep(time.Second * 1) c1 <- "one" }() go func() { time.Sleep(time.Second * 2) c2 <- "two" }() for i := 0; i < 2; i++ { select { case msg1 := <-c1: fmt.Println("received", msg1) case msg2 := <-c2: fmt.Println("received", msg2) } } }
received one
received two
总结 :
1 : ...
标签:
原文地址:http://www.cnblogs.com/jackkiexu/p/4341649.html