mirror of
https://github.com/Mrs4s/go-cqhttp.git
synced 2025-05-05 03:23:49 +08:00
22 lines
307 B
Go
22 lines
307 B
Go
package global
|
|
|
|
import (
|
|
"context"
|
|
|
|
"golang.org/x/time/rate"
|
|
)
|
|
|
|
var limiter *rate.Limiter
|
|
var limitEnable = false
|
|
|
|
func RateLimit(ctx context.Context) {
|
|
if limitEnable {
|
|
_ = limiter.Wait(ctx)
|
|
}
|
|
}
|
|
|
|
func InitLimiter(r float64, b int) {
|
|
limitEnable = true
|
|
limiter = rate.NewLimiter(rate.Limit(r), b)
|
|
}
|