Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FixedWindowLimiter ¶
type FixedWindowLimiter struct {
// contains filtered or unexported fields
}
func NewFixedWindow ¶
func NewFixedWindow(concurrent int) *FixedWindowLimiter
func (*FixedWindowLimiter) Close ¶
func (l *FixedWindowLimiter) Close()
func (*FixedWindowLimiter) ReleaseToken ¶
func (l *FixedWindowLimiter) ReleaseToken()
func (*FixedWindowLimiter) TakeToken ¶
func (l *FixedWindowLimiter) TakeToken()
func (*FixedWindowLimiter) TakeTokenNonBlocking ¶
func (l *FixedWindowLimiter) TakeTokenNonBlocking() bool
func (*FixedWindowLimiter) TakeTokenWithTimeout ¶
func (l *FixedWindowLimiter) TakeTokenWithTimeout(timeout time.Duration) bool
func (*FixedWindowLimiter) Wait ¶
func (l *FixedWindowLimiter) Wait()
type TokenBucket ¶
type TokenBucket struct {
// contains filtered or unexported fields
}
func NewTokenBucket ¶
func NewTokenBucket(qos int) *TokenBucket
func (*TokenBucket) Close ¶
func (l *TokenBucket) Close()
func (*TokenBucket) Startup ¶
func (l *TokenBucket) Startup()
func (*TokenBucket) TakeToken ¶
func (l *TokenBucket) TakeToken()
func (*TokenBucket) TakeTokenNonBlocking ¶
func (l *TokenBucket) TakeTokenNonBlocking() bool
func (*TokenBucket) TakeTokenWithTimeout ¶
func (l *TokenBucket) TakeTokenWithTimeout(timeout time.Duration) bool
type XTokenBucket ¶
type XTokenBucket struct {
// contains filtered or unexported fields
}
func NewXTokenBucket ¶
func NewXTokenBucket(qos, burst int) *XTokenBucket
func (*XTokenBucket) TakeToken ¶
func (x *XTokenBucket) TakeToken()
func (*XTokenBucket) TakeTokenNonBlocking ¶
func (x *XTokenBucket) TakeTokenNonBlocking() bool
func (*XTokenBucket) TakeTokenWithTimeout ¶
func (x *XTokenBucket) TakeTokenWithTimeout(timeout time.Duration) bool
Click to show internal directories.
Click to hide internal directories.