Enabling flexible and idiomatic regular execution of tasks.
Project description
zsv.ticker enables flexible and idiomatic regular execution of tasks:
from zsv.ticker import Ticker ticker = Ticker() ticker.start(5) while ticker.tick(): execute_task()
Ticker aims to be more idiomatic and easy to use than a time calculation and sleep call, and further enables the instantaneous termination of a waiting task:
import signal from time import sleep from zsv.ticker import Ticker ticker = Ticker() ticker.start(5) def abort(signum, frame): ticker.stop() signal.signal(signal.SIGINT, abort) while ticker.tick(): print("tick") sleep(2) print("tock")
The above script wraps a stop call in a signal handler registered to SIGINT: hitting Ctrl+C after the script prints “tick” but before it prints “tock” will yield a final “tock” before it terminates.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
zsv.ticker-1.1.0.tar.gz
(5.1 kB
view hashes)
Built Distribution
Close
Hashes for zsv.ticker-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65249d3a413e9fa32d84f285326e9711576df215a0691447a7ec5f5b083a0cd2 |
|
MD5 | 187d032e6d8e4d2318d405aee3d03ec8 |
|
BLAKE2b-256 | 6b3dd0cb11d4514aab02beed1d109ec14db00f7e13e3f457b693f6ae5c070643 |