为什么不Stopped打印出来,main而是返回?
package main
import (
"fmt"
"time"
)
func main() {
tick := time.Tick(100 * time.Millisecond)
boom := time.After(500 * time.Millisecond)
var stop chan int = make(chan int)
for {
select {
case <- stop:
fmt.Println("Stopped!")
case <-tick:
fmt.Println("tick.")
case <-boom:
fmt.Println("BOOM!")
stop <- 0
default:
fmt.Println(" .")
time.Sleep(50 * time.Millisecond)
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
.
.
tick.
.
.
tick.
.
.
tick.
.
.
tick.
.
.
tick.
BOOM!
Run Code Online (Sandbox Code Playgroud)
预计:
.
.
tick.
. …Run Code Online (Sandbox Code Playgroud) go ×1