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.0.tar.gz
(5.1 kB
view hashes)
Built Distribution
Close
Hashes for zsv.ticker-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44e6ea4dc43a464311b402cae5d56cf99df84f0f113eed42e8bdabcf14b6ed60 |
|
MD5 | fa664d1d53b01a28db8565dd7cf30973 |
|
BLAKE2b-256 | ec149b5544844f26b4e0480029fcbe4df997d8d9654636363cf50d40fb71a964 |