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()を呼び出してタイマーを停止しました。
この方法により、タイミングが簡単に実装され、タイマーの開始および停止が制御できます。