# Functions

BackoffUntil loops until stop channel is closed, run f every duration given by BackoffManager.
ContextForChannel provides a context that will be treated as cancelled when the provided parentCh is closed.
ErrorInterrupted returns an error that indicates the wait was ended early for a given reason.
ExponentialBackoff repeats a condition check with exponential backoff.
ExponentialBackoffWithContext repeats a condition check with exponential backoff.
Forever calls f every period for ever.
Interrupted returns true if the error indicates a Poll, ExponentialBackoff, or Until loop exited for any reason besides the condition returning true or an error.
Jitter returns a time.Duration between duration and duration + maxFactor * duration.
JitterUntil loops until stop channel is closed, running f every period.
JitterUntilWithContext loops until context is done, running f every period.
NewExponentialBackoffManager returns a manager for managing exponential backoff.
NewJitteredBackoffManager returns a BackoffManager that backoffs with given duration plus given jitter.
NonSlidingUntil loops until stop channel is closed, running f every period.
NonSlidingUntilWithContext loops until context is done, running f every period.
Poll tries a condition func until it returns true, an error, or the timeout is reached.
PollImmediate tries a condition func until it returns true, an error, or the timeout is reached.
PollImmediateInfinite tries a condition func until it returns true or an error PollImmediateInfinite runs the 'condition' before waiting for the interval.
PollImmediateInfiniteWithContext tries a condition func until it returns true or an error or the specified context gets cancelled or expired.
PollImmediateUntil tries a condition func until it returns true, an error or stopCh is closed.
PollImmediateUntilWithContext tries a condition func until it returns true, an error or the specified context is cancelled or expired.
PollImmediateWithContext tries a condition func until it returns true, an error, or the timeout is reached or the specified context expires, whichever happens first.
PollInfinite tries a condition func until it returns true or an error PollInfinite always waits the interval before the run of 'condition'.
PollInfiniteWithContext tries a condition func until it returns true or an error PollInfiniteWithContext always waits the interval before the run of 'condition'.
PollUntil tries a condition func until it returns true, an error or stopCh is closed.
PollUntilContextCancel tries a condition func until it returns true, an error, or the context is cancelled or hits a deadline.
PollUntilContextTimeout will terminate polling after timeout duration by setting a context timeout.
PollUntilWithContext tries a condition func until it returns true, an error or the specified context is cancelled or expired.
PollWithContext tries a condition func until it returns true, an error, or when the context expires or the timeout is reached, whichever happens first.
Until loops until stop channel is closed, running f every period.
UntilWithContext loops until context is done, running f every period.

# Variables

ErrWaitTimeout is returned when the condition was not satisfied in time.
For any test of the style: ..
NeverStop may be passed to Until to make it never stop.
RealTimer can be passed to methods that need a clock.Timer.

# Structs

Backoff holds parameters applied to a Backoff function.
Group allows to start a group of goroutines and wait for their completion.

# Interfaces

BackoffManager manages backoff with a particular scheme based on its underlying implementation.
Timer abstracts how wait functions interact with time runtime efficiently.

# Type aliases

ConditionFunc returns true if the condition is satisfied, or an error if the loop should be aborted.
ConditionWithContextFunc returns true if the condition is satisfied, or an error if the loop should be aborted.
DelayFunc returns the next time interval to wait.