<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Golang中time包有兩個定時器,分別為 ticker 和 timer。兩者都可以實現定時功能,但各自都有自己的使用場景。
Timer是一個定時器。代表未來的一個單一事件,你可以告訴timer你要等待多長時間。
package main import ( "fmt" "time" ) func main() { //設定定時器為3秒 timer := time.NewTimer(3 * time.Second) fmt.Println("當前時間為:", time.Now()) t := <-timer.C //從定時器拿資料 fmt.Println("當前時間為:", t) }
Ticker是一個週期觸發定時的計時器,它會按照一個時間間隔往channel傳送系統當前時間,而channel的接收者可以以固定的時間間隔從channel中讀取事件。
Ticker是一個定時觸發的計時器,
它會以一個間隔(interval)往channel傳送一個事件(當前時間),
而channel的接收者可以以固定的時間間隔從channel中讀取事件。
package main import ( "fmt" "time" ) func main() { //建立一個週期性的定時器 ticker := time.NewTicker(3 * time.Second) fmt.Println("當前時間為:", time.Now()) go func() { for { //從定時器中獲取資料 t := <-ticker.C fmt.Println("當前時間為:", t) } }() for { time.Sleep(time.Second * 1) } }
package main import ( "github.com/robfig/cron" "log" "time" ) func main() { //cron1() //cron2() cron3() select { } } func cron1() { log.Println("Starting...") c := cron.New() c.AddFunc("* * * * * *", func() { log.Println("Run models.CleanAllTag...") }) c.AddFunc("* * * * * *", func() { log.Println("Run models.CleanAllArticle...") }) c.Start() t1 := time.NewTimer(time.Second * 10) for { select { case <-t1.C: t1.Reset(time.Second * 10) } } } func cron2() { log.Println("Starting...") c := cron.New() // 新建一個定時任務物件 c.AddFunc("* * * * * *", func() { log.Println("hello world") }) // 給物件增加定時任務 c.Start() //select { //} time.Sleep(10 * time.Second) c.Stop() } func cron3() { log.Println("Starting...") c := cron.New() h := Hello{"I Love You!"} // 新增定時任務 c.AddJob("*/2 * * * * *", h) // 新增定時任務 5秒執行一次 c.AddFunc("*/5 * * * * *", func() { log.Println("hello word") }) s, err := cron.Parse("*/3 * * * * *") if err != nil { log.Println("Parse error") } h2 := Hello{"I Hate You!"} c.Schedule(s, h2) // 其中任務 c.Start() // 關閉任務 defer c.Stop() } type Hello struct { Str string } func(h Hello) Run() { log.Println(h.Str) }
https://blog.haohtml.com/archives/19859
https://studygolang.com/articles/17624
https://www.jianshu.com/p/fd3dda663953
https://blog.51cto.com/u_13914991/2294357
https://www.cnblogs.com/yinzhengjie/p/12244385.html
http://t.zoukankan.com/yinzhengjie-p-12245289.html
https://blog.51cto.com/u_13914991/2294357
到此這篇關於Golang cron 定時器和定時任務的文章就介紹到這了,更多相關Golang cron 定時任務內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45