溫馨提示×

Go語言定時器如何設置間隔

小樊
82
2024-11-02 16:54:29
欄目: 編程語言

在Go語言中,你可以使用time包中的Ticker類型來創(chuàng)建一個定時器,從而設置間隔。以下是一個簡單的示例:

package main

import (
	"fmt"
	"time"
)

func main() {
	// 創(chuàng)建一個定時器,每隔1秒觸發(fā)一次
	ticker := time.NewTicker(1 * time.Second)

	// 使用一個通道來接收定時器的信號
	done := make(chan bool)

	// 啟動一個goroutine來處理定時器的信號
	go func() {
		for {
			select {
			case <-done:
				return
			case t := <-ticker.C:
				fmt.Println("定時器觸發(fā),當前時間:", t)
			}
		}
	}()

	// 讓定時器運行一段時間,然后停止它
	time.Sleep(5 * time.Second)
	ticker.Stop()
	done <- true
	fmt.Println("定時器已停止")
}

在這個示例中,我們創(chuàng)建了一個每隔1秒觸發(fā)的定時器。通過使用time.NewTicker()函數(shù)創(chuàng)建一個Ticker類型的變量,然后使用ticker.C通道來接收定時器的信號。我們在一個goroutine中處理定時器的信號,并在5秒后停止定時器。

0