aiojobs

Jobs scheduler for managing background task (asyncio)

Showing:

Popularity

Downloads/wk

0

GitHub Stars

542

Maintenance

Last Commit

2mos ago

Contributors

16

Package

Dependencies

1

License

Categories

Readme

=======

aiojobs

.. image:: https://travis-ci.org/aio-libs/aiojobs.svg?branch=master :target: https://travis-ci.org/aio-libs/aiojobs .. image:: https://codecov.io/gh/aio-libs/aiojobs/branch/master/graph/badge.svg :target: https://codecov.io/gh/aio-libs/aiojobs .. image:: https://img.shields.io/pypi/v/aiojobs.svg :target: https://pypi.python.org/pypi/aiojobs .. image:: https://readthedocs.org/projects/aiojobs/badge/?version=latest :target: http://aiojobs.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status .. image:: https://badges.gitter.im/Join%20Chat.svg :target: https://gitter.im/aio-libs/Lobby :alt: Chat on Gitter

Jobs scheduler for managing background task (asyncio)

The library gives controlled way for scheduling background tasks for asyncio applications.

Installation

.. code-block:: bash

$ pip3 install aiojobs

Usage example

.. code-block:: python

import asyncio import aiojobs

async def coro(timeout): await asyncio.sleep(timeout)

async def main(): scheduler = await aiojobs.create_scheduler() for i in range(100):

       # spawn jobs
       await scheduler.spawn(coro(i/10))

   await asyncio.sleep(5.0)
   # not all scheduled jobs are finished at the moment

   # gracefully close spawned jobs
   await scheduler.close()

asyncio.get_event_loop().run_until_complete(main())

Integration with aiohttp.web

.. code-block:: python

from aiohttp import web from aiojobs.aiohttp import setup, spawn

async def handler(request): await spawn(request, coro()) return web.Response()

app = web.Application() app.router.add_get('/', handler) setup(app)

or just

.. code-block:: python

from aiojobs.aiohttp import atomic

@atomic async def handler(request): return web.Response()

For more information read documentation: https://aiojobs.readthedocs.io

Communication channels

aio-libs google group: https://groups.google.com/forum/#!forum/aio-libs

Feel free to post your questions and ideas here.

Gitter Chat https://gitter.im/aio-libs/Lobby

We support Stack Overflow <https://stackoverflow.com>_. Please add python-asyncio or aiohttp tag to your question there.

Author and License

The aiojobs package is written by Andrew Svetlov.

It's Apache 2 licensed and freely available.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial