Beispiel, wenn Sie 10 Mal pro Sekunde ausführen möchten
Verwenden Sie https://godoc.org/golang.org/x/time/rate
func main() {
limiter := rate.NewLimiter(rate.Limit(10), 1)
ctx := context.Background()
for i := 0; i < 1000; i++ {
if err := limiter.Wait(ctx); err != nil {
fmt.Println(err)
}
fmt.Println(i)
}
}
https://play.golang.org/p/ByAz9VCkGFk
https://qiita.com/lufia/items/29bf1aeb0a0fe69d16f0 https://blog.lufia.org/entry/2016/08/28/000000
Recommended Posts