mirror of
https://github.com/Mrs4s/go-cqhttp.git
synced 2025-05-05 11:33:48 +08:00
21 lines
306 B
Go
21 lines
306 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)
|
|
}
|