[Go] golang定时器的使用
程序员文章站
2022-07-02 12:48:37
golang中的定时器是使用的chanel阻塞来实现的,主要使用到了time包中的内容,如果有多个定时器的channel,为了防止阻塞,可以使用select来获取遍历channel 定时器获取的channel是个单通道channel,只能读不能写,定义时这样来定义var test <-chan in ......
golang中的定时器是使用的chanel阻塞来实现的,主要使用到了time包中的内容,如果有多个定时器的channel,为了防止阻塞,可以使用select来获取遍历channel
定时器获取的channel是个单通道channel,只能读不能写,定义时这样来定义var test <-chan int
package main import ( "fmt" "time" ) func main() { t := time.newticker(time.second) t1 := time.newticker(time.second * 2) for { select { case v := <-t.c: fmt.println("hello", v) case v := <-t1.c: fmt.println("tsh", v) } } // var test <-chan int // <-test }