首页 > 解决方案 > 为什么限制 = 0 时 Go Limiter 不起作用?

问题描述

我正在使用Go Limiter,当 Limit 为 0 时似乎无法正常工作。它应该拒绝所有事件,但事实并非如此。(请注意,我没有使用 rate.Every(),在 0 的情况下设置限制 Inf)

编码:

package main

import (
    "fmt"
    "golang.org/x/time/rate"
)

func main() {
    rl := rate.NewLimiter(0, 1)

    for i := 0; i < 1000; i++ {
        fmt.Println(rl.Allow())
    }

}

结果都是真的。

你可以在这个操场上查看

标签: gorate

解决方案


推荐阅读