tick := time.Tick(1 * time.second)
表示每隔一段生产一条数据到tick通道中。
boom := time.After(500 * time.Millisecond)
表示在一段时间之后产生一条数据到tick通道中,不会持续产生。
func timetick() { tick := time.Tick(100 * time.Millisecond) boom := time.After(500 * time.Millisecond) for { select { case <-tick: fmt.Println("tick.") case <-boom: fmt.Println("BOOM!") return default: fmt.Println(" .") time.Sleep(50 * time.Millisecond) } } }
调用方式:go timetick()
祝好