亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創

Golang定時器(二)

2023-09-20 11:22:07
10
0

二、Golang定時器的停止

1、Timer

func Timer() {
	duration := time.Second
	timer := time.NewTimer(duration)
	cnt := 0
	for range timer.C {
		fmt.Println(time.Now())
		timer.Reset(duration)
		cnt++
		if cnt == 5 {
			timer.Stop()
			break
		}
	}
}

 

2、Tick

Tick實際上是對底層Ticker的封裝,由于它直接返回的是<-chan Time類型,并沒有像Timer或Ticker一樣提供一個Stop函數來停止計時器,也由于chan是一個只有接收類型,因此也不能通過close直接關閉,因此這里是有可能產生內存泄漏現象

func Timer() {
	duration := time.Second
	cnt := 0
	for next := range time.Tick(duration) {
		fmt.Println(next)
		cnt++
		if cnt == 5 {
			break
		}
	}
}

 

3、Ticker

func Timer() {
	duration := time.Second
	ticker := time.NewTicker(duration)
	cnt := 0
	for next := range ticker.C {
		fmt.Println(next)
		cnt++
		if cnt == 5 {
			ticker.Stop()
			break
		}
	}
}
0條評論
0 / 1000
李****瑛
5文章數
0粉絲數
李****瑛
5 文章 | 0 粉絲
李****瑛
5文章數
0粉絲數
李****瑛
5 文章 | 0 粉絲
原創

Golang定時器(二)

2023-09-20 11:22:07
10
0

二、Golang定時器的停止

1、Timer

func Timer() {
	duration := time.Second
	timer := time.NewTimer(duration)
	cnt := 0
	for range timer.C {
		fmt.Println(time.Now())
		timer.Reset(duration)
		cnt++
		if cnt == 5 {
			timer.Stop()
			break
		}
	}
}

 

2、Tick

Tick實際上是對底層Ticker的封裝,由于它直接返回的是<-chan Time類型,并沒有像Timer或Ticker一樣提供一個Stop函數來停止計時器,也由于chan是一個只有接收類型,因此也不能通過close直接關閉,因此這里是有可能產生內存泄漏現象

func Timer() {
	duration := time.Second
	cnt := 0
	for next := range time.Tick(duration) {
		fmt.Println(next)
		cnt++
		if cnt == 5 {
			break
		}
	}
}

 

3、Ticker

func Timer() {
	duration := time.Second
	ticker := time.NewTicker(duration)
	cnt := 0
	for next := range ticker.C {
		fmt.Println(next)
		cnt++
		if cnt == 5 {
			ticker.Stop()
			break
		}
	}
}
文章來自個人專欄
文章 | 訂閱
0條評論
0 / 1000
請輸入你的評論
0
0