亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Golang time包中的結(jié)構(gòu)體time.Ticker

 更新時(shí)間:2023年08月02日 10:35:50   作者:路多辛  
在日常開發(fā)過(guò)程中,會(huì)頻繁遇到對(duì)時(shí)間進(jìn)行操作的場(chǎng)景,使用 Golang 中的 time 包可以很方便地實(shí)現(xiàn)對(duì)時(shí)間的相關(guān)操作,接下來(lái)的幾篇文章會(huì)詳細(xì)講解 time 包,本文講解一下 time 包中的結(jié)構(gòu)體 time.Ticker,需要的朋友可以參考下

time.Ticker

time.Ticker 會(huì)按照一個(gè)指定的時(shí)間間隔周期性地往一個(gè) channel 中發(fā)送一個(gè) time.Time 類型的數(shù)據(jù),channel的 接收者可以以這個(gè)固定的時(shí)間間隔從 channel 中讀取這個(gè)數(shù)據(jù),常用于實(shí)現(xiàn)定時(shí)相關(guān)的功能。結(jié)構(gòu)體定義和對(duì)應(yīng)的方法如下:

type Ticker struct {
	C <-chan Time // The channel on which the ticks are delivered.
	r runtimeTimer
}

有兩個(gè)方法:

  • func (t *Ticker) Reset(d Duration),停止計(jì)時(shí)器并將其周期重置為指定的時(shí)間間隔。
  • func (t *Ticker) Stop(),關(guān)閉計(jì)時(shí)器,調(diào)用此方法之后,將不再發(fā)送 tick。

使用示例

可以使用 time.NewTicker 函數(shù)創(chuàng)建一個(gè) Ticker 實(shí)例,簡(jiǎn)單使用示例如下:

package main
import (
	"fmt"
	"time"
)
func main() {
	ticker := time.NewTicker(time.Second) // 每隔1s進(jìn)行一次打印
	defer ticker.Stop()
	count := 0
	for {
		<-ticker.C
		fmt.Println("Tick")
		count++
		if count > 2 {
			ticker.Reset(2 * time.Second)
		}
		if count > 5 {
			break
		}
	}
}

首先創(chuàng)建了一個(gè)  time.Ticker 對(duì)象,時(shí)間間隔為1秒,第 3 次之后將時(shí)間間隔改為 2 秒,第 6 次后退出循環(huán)。

到此這篇關(guān)于詳解Golang time包中的結(jié)構(gòu)體time.Ticker的文章就介紹到這了,更多相關(guān)Golang結(jié)構(gòu)體time.Ticker內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • VSCode安裝go相關(guān)插件失敗的簡(jiǎn)單解決方案

    VSCode安裝go相關(guān)插件失敗的簡(jiǎn)單解決方案

    這篇文章主要給大家介紹了關(guān)于VSCode安裝go相關(guān)插件失敗的簡(jiǎn)單解決方案,VSCode是我們開發(fā)go程序的常用工具,最近安裝的時(shí)候遇到了些問(wèn)題,需要的朋友可以參考下
    2023-07-07
  • Golang?strings包常用字符串操作函數(shù)

    Golang?strings包常用字符串操作函數(shù)

    Golang?中的字符串統(tǒng)一使用?UTF-8?(屬于Unicode編碼的一種實(shí)現(xiàn)方式)進(jìn)行編碼,本篇文章將結(jié)合具體實(shí)例對(duì)常用的字符串操作函數(shù)進(jìn)行介紹,感興趣的可以了解一下
    2021-12-12
  • Go語(yǔ)言中 Channel 詳解

    Go語(yǔ)言中 Channel 詳解

    Go 語(yǔ)言中的 channel 是實(shí)現(xiàn) goroutine 間無(wú)鎖通信的關(guān)鍵機(jī)制,他使得寫多線程并發(fā)程序變得簡(jiǎn)單、靈活、觸手可得。下面就個(gè)人理解對(duì) channel 使用過(guò)程中應(yīng)該注意的地方進(jìn)行一個(gè)簡(jiǎn)要的總結(jié)。
    2018-10-10
  • 深入理解gorm如何和數(shù)據(jù)庫(kù)建立連接

    深入理解gorm如何和數(shù)據(jù)庫(kù)建立連接

    這篇文章主要為大家詳細(xì)介紹了gorm如何和數(shù)據(jù)庫(kù)建立連接,文中的示例代碼講解詳細(xì),對(duì)我們深入了解GO語(yǔ)言有一定的幫助,需要的小伙伴可以參考下
    2023-11-11
  • Golang的鎖機(jī)制使用及說(shuō)明

    Golang的鎖機(jī)制使用及說(shuō)明

    這篇文章主要介紹了Golang的鎖機(jī)制使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • go開源項(xiàng)目用戶名密碼驗(yàn)證的邏輯鬼才寫法

    go開源項(xiàng)目用戶名密碼驗(yàn)證的邏輯鬼才寫法

    這篇文章主要為大家介紹了go開源項(xiàng)目中發(fā)現(xiàn)的一個(gè)邏輯鬼才寫法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • go?defer?return?panic?執(zhí)行順序示例詳解

    go?defer?return?panic?執(zhí)行順序示例詳解

    這篇文章主要介紹了go?defer?return?panic?執(zhí)行順序,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • 基于golang channel實(shí)現(xiàn)的輕量級(jí)異步任務(wù)分發(fā)器示例代碼

    基于golang channel實(shí)現(xiàn)的輕量級(jí)異步任務(wù)分發(fā)器示例代碼

    這篇文章主要給大家介紹了關(guān)于基于golang channel實(shí)現(xiàn)的輕量級(jí)異步任務(wù)分發(fā)器的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • Go語(yǔ)言對(duì)接微信支付與退款指南(示例詳解)

    Go語(yǔ)言對(duì)接微信支付與退款指南(示例詳解)

    在互聯(lián)網(wǎng)技術(shù)日益發(fā)展的背景下,Go語(yǔ)言憑借并發(fā)處理能力,在后端開發(fā)中大放異彩,本文詳細(xì)介紹如何使用Go語(yǔ)言對(duì)接微信支付,完成支付和退款功能,包括準(zhǔn)備工作、初始化微信支付客戶端、實(shí)現(xiàn)支付功能,以及處理支付回調(diào)和退款等
    2024-10-10
  • golang的os包用法詳解

    golang的os包用法詳解

    Go語(yǔ)言的 os 包中提供了操作系統(tǒng)函數(shù)的接口,是一個(gè)比較重要的包。顧名思義,os 包的作用主要是在服務(wù)器上進(jìn)行系統(tǒng)的基本操作,本文將詳細(xì)介紹了golang的os包用法,需要的朋友可以參考下
    2023-05-05

最新評(píng)論