Go言語 タイマータスク実装:time.AfterFunc徹底解説

Go言語で、タイマータスクを実装するために標準ライブラリのtimeパッケージを使用できます。以下は簡単な例です:

package main

import (
	"fmt"
	"time"
)

func main() {
    // 创建一个定时器,每隔1秒触发一次
    ticker := time.NewTicker(1 * time.Second)
    
    // 使用一个goroutine来执行定时任务
    go func() {
        for {
            select {
            case <-ticker.C:
                // 定时任务逻辑
                fmt.Println("定时任务执行:", time.Now())
            }
        }
    }()
    
    // 程序将持续运行10秒
    time.Sleep(10 * time.Second)
    
    // 停止定时器
    ticker.Stop()
    fmt.Println("定时任务已停止")
}

この例では、time.NewTickerを使用して1秒ごとにトリガーされるタイマーが作成され、その後、ゴルーチンを使用して定期タスクのロジックが実行されました。プログラムは10秒間続けて実行され、ticker.Stop()を呼び出してタイマーを停止しました。

この方法により、タイミングが簡単に実装され、タイマーの開始および停止が制御できます。

bannerAds