Skip to main content

An asynchronous Tasks Library using asyncio

Project description

PyPI Read the Docs GitHub

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

PyTask IO

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

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

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pytask-io, version 0.0.11
Filename, size File type Python version Upload date Hashes
Filename, size pytask-io-0.0.11.tar.gz (9.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page