Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Options ¶
type Options struct {
	InitialBackoff      time.Duration   // Default retry backoff interval
	MaxBackoff          time.Duration   // Maximum retry backoff interval
	Multiplier          float64         // Default backoff constant
	MaxRetries          int             // Maximum number of attempts (0 for infinite)
	RandomizationFactor float64         // Randomize the backoff interval by constant
	Closer              <-chan struct{} // Optionally end retry loop channel close.
}
    Options provides reusable configuration of Retry objects.
type Retry ¶
type Retry struct {
	// contains filtered or unexported fields
}
    Retry implements the public methods necessary to control an exponential- backoff retry loop.
func Start ¶
Start returns a new Retry initialized to some default values. The Retry can then be used in an exponential-backoff retry loop.
func StartWithCtx ¶
StartWithCtx returns a new Retry initialized to some default values. The Retry can then be used in an exponential-backoff retry loop. If the provided context is canceled (see Context.Done), the retry loop ends early.
func (*Retry) Next ¶
Next returns whether the retry loop should continue, and blocks for the appropriate length of time before yielding back to the caller. If a stopper is present, Next will eagerly return false when the stopper is stopped.