Golang定时器Timer与Ticker的使用方法-创新互联

Golang 定时器Timer 与Ticker的使用方法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都创新互联长期为上千多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为汉源企业提供专业的成都网站建设、网站制作,汉源网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。

定时器是什么

Golang 原生 time 包下可以用来执行一些定时任务或者是周期性的任务的一个工具

本文基于 Go 1.14,如果以下文章有哪里不对或者问题的地方,欢迎讨论学习

定时器的日常使用

Timer 相关

func NewTimer(d Duration) *Timer
func (t *Timer) Reset(d Duration) bool
func (t *Timer) Stop() bool
func After(d Duration) <-chan Time
func AfterFunc(d Duration, f func()) *Timer

func main() {
  timer := time.NewTimer(3 * time.Second)
  select {
  case <-timer.C:
   fmt.Println("3秒执行任务")
  }
  timer.Stop() // 这里来提高 timer 的回收
}

func main() {
  tChannel := time.After(3 * time.Second) // 其内部其实是生成了一个 timer
  select {
  case <-tChannel:
   fmt.Println("3秒执行任务")
  }
}

func main() {
 timer := time.NewTimer(3 * time.Second)
 for {
  timer.Reset(4 * time.Second) // 这样来复用 timer 和修改执行时间
  select {
  case <-timer.C:
   fmt.Println("每隔4秒执行任务")
  }
 }
}

名称栏目:Golang定时器Timer与Ticker的使用方法-创新互联
文章网址:http://bzwzjz.com/article/ceoieo.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 成都网站制作 重庆企业网站建设 成都网站制作 网站设计 成都响应式网站建设 专业网站设计 定制网站设计 成都网站建设 成都营销网站建设 企业网站设计 上市集团网站建设 成都网站建设 成都网站建设 网站建设开发 成都网站设计 品牌网站建设 网站设计制作 成都网站建设公司 盐亭网站设计 温江网站设计 响应式网站设计