aiojobs

管理后台任务的工作调度器(asyncio)。「Jobs scheduler for managing background task (asyncio)」

  • Owner: aio-libs/aiojobs
  • Platform: Linux,Windows,Mac
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

aiojobs

image

image

image

Documentation Status

Chat on Gitter

Job scheduler for managing background tasks (asyncio)

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

Installation

$ pip3 install aiojobs

Usage example

import asyncio
import aiojobs

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

async def main():
    scheduler = aiojobs.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

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

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. 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.

Main metrics

Overview
Name With Owneraio-libs/aiojobs
Primary LanguagePython
Program languagePython (Language Count: 2)
Platform
License:Other
所有者活动
Created At2017-06-30 12:50:11
Pushed At2025-06-02 21:03:36
Last Commit At2025-06-01 22:01:59
Release Count14
Last Release Namev1.4.0 (Posted on 2025-04-05 01:21:49)
First Release Namev0.0.2 (Posted on 2017-07-01 15:15:12)
用户参与
Stargazers Count884
Watchers Count16
Fork Count69
Commits Count477
Has Issues Enabled
Issues Count63
Issue Open Count6
Pull Requests Count372
Pull Requests Open Count2
Pull Requests Close Count118
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private