Qucs-S S-parameter Viewer & RF Synthesis Tools
Loading...
Searching...
No Matches
Public Member Functions | List of all members
pip._vendor.tenacity.wait.wait_random_exponential Class Reference
Inheritance diagram for pip._vendor.tenacity.wait.wait_random_exponential:
Inheritance graph
[legend]
Collaboration diagram for pip._vendor.tenacity.wait.wait_random_exponential:
Collaboration graph
[legend]

Public Member Functions

float __call__ (self, "RetryCallState" retry_state)
 
- Public Member Functions inherited from pip._vendor.tenacity.wait.wait_exponential
None __init__ (self, typing.Union[int, float] multiplier=1, _utils.time_unit_type max=_utils.MAX_WAIT, typing.Union[int, float] exp_base=2, _utils.time_unit_type min=0)
 
- Public Member Functions inherited from pip._vendor.tenacity.wait.wait_base
"wait_combine" __add__ (self, "wait_base" other)
 
typing.Union["wait_combine", "wait_base"] __radd__ (self, "wait_base" other)
 

Additional Inherited Members

- Public Attributes inherited from pip._vendor.tenacity.wait.wait_exponential
 multiplier
 
 min
 
 max
 
 exp_base
 

Detailed Description

Random wait with exponentially widening window.

An exponential backoff strategy used to mediate contention between multiple
uncoordinated processes for a shared resource in distributed systems. This
is the sense in which "exponential backoff" is meant in e.g. Ethernet
networking, and corresponds to the "Full Jitter" algorithm described in
this blog post:

https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/

Each retry occurs at a random time in a geometrically expanding interval.
It allows for a custom multiplier and an ability to restrict the upper
limit of the random interval to some maximum value.

Example::

    wait_random_exponential(multiplier=0.5,  # initial window 0.5s
                            max=60)          # max 60s timeout

When waiting for an unavailable resource to become available again, as
opposed to trying to resolve contention for a shared resource, the
wait_exponential strategy (which uses a fixed interval) may be preferable.

Member Function Documentation

◆ __call__()

float pip._vendor.tenacity.wait.wait_random_exponential.__call__ (   self,
"RetryCallState"  retry_state 
)

The documentation for this class was generated from the following file: