多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] ## golang 写循环执行的定时任务,**常见的有以下三种实现方式:** 1、`time.Sleep`方法: ``` for{ time.Sleep(time.Second) fmt.Println("我在定时执行任务") } ``` 2、`time.Tick`函数: ``` t1:=time.Tick(3*time.Second) for { select { case <-t1: fmt.Println("t1定时器") } } ``` 3、其中Tick定时任务,也可以先使用`time.Ticker`函数获取Ticker结构体,然后进行阻塞监听信息,这种方式可以手动选择停止定时任务,在停止任务时,减少对内存的浪费。 ``` t:=time.NewTicker(time.Second) for { select { case <-t.C: fmt.Println("t1定时器") t.Stop() } } ``` 其中第二种和第三种可以归为同一类