7
一定の間隔で繰り返し作業を行う方法はありますか?
Goで反復的なバックグラウンドタスクを実行する方法はありますか?Timer.schedule(task, delay, period)Javaのようなものを考えています。私はこれをgoroutineとTime.sleep()で実行できることを知っていますが、簡単に止まるものが欲しいです。 これは私が手に入れたものですが、私には醜く見えます。よりクリーンで良い方法はありますか? func oneWay() { var f func() var t *time.Timer f = func () { fmt.Println("doing stuff") t = time.AfterFunc(time.Duration(5) * time.Second, f) } t = time.AfterFunc(time.Duration(5) * time.Second, f) defer t.Stop() //simulate doing stuff time.Sleep(time.Minute) }
148
go