Files

37 lines
473 B
Go

package main
import (
"fmt"
"time"
)
func async1() chan string {
ch := make(chan string)
go func() {
time.Sleep(1 * time.Second)
ch <- "async1 result"
}()
return ch
}
func async2() chan string {
ch := make(chan string)
go func() {
time.Sleep(1 * time.Second)
ch <- "async2 result"
}()
return ch
}
func main() {
ch1 := async1()
ch2 := async2()
select {
case result := <-ch1:
fmt.Println(result)
case result := <-ch2:
fmt.Println(result)
}
}