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 // contains filtered or unexported fields }
RateLimitedFunction is a rate limited function controlling how often the function/handler is invoked.
func NewRateLimitedFunction ¶
func NewRateLimitedFunction(backOffKey string, period time.Duration, 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.
Click to show internal directories.
Click to hide internal directories.