aiosched - Python asyncio jobs scheduler
Executes specified asyncio jobs with a chosen interval. Has relatively small number of features but it's fast.
Why one more scheduler?
- it's extremely accurate and fast
- it's simple
- all methods are thread-safe
Example
from aiosched import scheduler
import asyncio
async def test1(a, b, c):
print(f'JOB1 {a} {b} {c}')
async def test2():
print('JOB2')
async def test3():
print('JOB3')
from aiosched import scheduler
loop = asyncio.new_event_loop()
scheduler.start(loop=loop)
# jobs can be added before actual start in pending mode
job1 = scheduler.create_threadsafe(target=test1, args=(1, 2, 3), interval=1)
job2 = scheduler.create_threadsafe(target=test2, interval=0.5)
# run job once after 5 seconds
job3 = scheduler.create_threadsafe(target=test3, number=1, timer=5)
# cancel job 2
scheduler.cancel(job2)
# equal to
job2.cancel()
loop.run_forever()
or run scheduler loop as coroutine:
loop = asyncio.new_event_loop()
job1 = scheduler.create_threadsafe(target=test1, args=(1,2,3), interval=0.1)
job2 = scheduler.create_threadsafe(target=test2, interval=0.1)
loop.run_until_complete(scheduler.scheduler_loop())
Install
pip3 install aiosched
Advanced
Read AsyncJobScheduler and AsyncScheduledJob classes documentation in pydoc.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiosched-0.0.25.tar.gz
(3.8 kB
view details)
File details
Details for the file aiosched-0.0.25.tar.gz.
File metadata
- Download URL: aiosched-0.0.25.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/2.0.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41d9abf0553f15cbd239ca3633262b8dd522a4a9f5127d84c8cc9c59292a1f3b
|
|
| MD5 |
9e061b46a5b57542f719d817678c58b0
|
|
| BLAKE2b-256 |
3e7b432bd5bd5e04991bd39b574208bb8e57fc8ef6e0c62d758feeab1c70c4d0
|