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.0.2.tar.gz
(5.1 kB
view hashes)
Built Distribution
Close
Hashes for zsv.ticker-1.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90fe7a1ac9f2c77cce8b2e6c9ba8f17eb4e538b8c84d384d16743dd7857f88a0 |
|
MD5 | 9b6bdf288d510b59843bb7cbacbab8b5 |
|
BLAKE2b-256 | 445fd188486da06fbfb28c2cd0c887a498b7e09908654b8445073929119cb631 |