An asynchronous Tasks Library using asyncio
Project description
Pytask IO
Asynchronous Tasks Library using asyncio
An Asyncio based task queue that is designed to be super easy the use!
Read the docs: Documentation
Install
pip install pytask-io
docker run redis # Rabbit MQ coming soon...
Usage
from pytask_io import PyTaskIO
# Starts the task runner
pytask = PytaskIO(
store_port=6379,
store_host="localhost",
db=0,
workers=1,
)
# Start the PytaskIO task queue on a separate thread.
pytask.run()
# Handle a long running process, in this case a send email function
metadata = pytask.add_task(send_email, title, body)
# Try once to get the results of your email sometime in the future
result = pytask.get_task(metadata)
# Later we can use the `metadata` result to pass to `add_task`
result = pytask.poll_for_task(metadata, tries=100, interval=60)
# Stop PytaskIO completely (This will not affect any units of work that haven't yet executed)
pytask.stop()
Compatible task types
PyTaskIO will always return back the task meta data. Do not embed Python objects of type frame, generator, traceback & context objects. In this case you will get back the exception thrown when PyTaskIO attempts to execute the serialization.
Authors
- joegasewicz - Initial work - @joegasewicz
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pytask-io-0.0.11.tar.gz
.
File metadata
- Download URL: pytask-io-0.0.11.tar.gz
- Upload date:
- Size: 9.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/28.8.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b96d84cd3bed9b043a361c264dfb9d6564dfb8dc4a938d50bd6b42df23bb032c |
|
MD5 | 8621450838bf4d5da4bfbe7541400cfc |
|
BLAKE2b-256 | f80b75e258ebbf71625291cd1a19ea5dc91e767501e1dc704331e13076324f0c |