pypck.timeout_retry¶
Base classes for handling reoccurent tasks.
- class pypck.timeout_retry.TimeoutRetryHandler(task_registry: TaskRegistry, num_tries: int = 3, timeout: float = 3.5)¶
Manage timeout and retry logic for an LCN request.
- activate() None¶
Schedule the next activation.
- async async_activate() None¶
Clean start of next timeout_loop.
- async cancel() None¶
Must be called when a response (requested or not) is received.
- async done() None¶
Signal the completion of the TimeoutRetryHandler.
- is_active() bool¶
Check whether the request logic is active.
- async on_timeout(failed: bool = False) None¶
Is called on timeout of TimeoutRetryHandler.
- set_timeout(timeout: int) None¶
Set the timeout in seconds.
- set_timeout_callback(timeout_callback: Any, *timeout_args: Any, **timeout_kwargs: Any) None¶
Timeout_callback function is called, if timeout expires.
Function has to take one argument: Returns failed state (True if failed)
- async timeout_loop() None¶
Timeout / retry loop.