Help us shape the future of Go! Take the 2026 Go Developer Survey

ratelimiter

package
v1.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 24, 2017 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type HandlerFunc

type HandlerFunc func() error

HandlerFunc defines function signature for a RateLimitedFunction.

type RateLimitedFunction

type RateLimitedFunction struct {
	// Handler is the function to rate limit calls to.
	Handler HandlerFunc

	// Rate limiting configuration.
	flowcontrol.RateLimiter
	// contains filtered or unexported fields
}

RateLimitedFunction is a rate limited function controlling how often the function/handler is invoked.

func NewRateLimitedFunction

func NewRateLimitedFunction(keyFunc kcache.KeyFunc, interval int, handlerFunc HandlerFunc) *RateLimitedFunction

NewRateLimitedFunction creates a new rate limited function.

func (*RateLimitedFunction) Invoke

func (rlf *RateLimitedFunction) Invoke(resource interface{})

Invoke adds a request if its not already present and waits for the background processor to execute it.

func (*RateLimitedFunction) RunUntil

func (rlf *RateLimitedFunction) RunUntil(stopCh <-chan struct{})

RunUntil begins processes the resources from queue asynchronously until stopCh is closed.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL