Files
brewpi/tasks/task.py
T
2020-12-17 14:45:43 +01:00

27 lines
393 B
Python

import abc
import asyncio
class ATask:
def __init__(self, interval):
self.interval = interval
@abc.abstractmethod
def on_process(self):
pass
class TaskManager:
def __init__(self):
self.tasks = []
def add(self, task: ATask):
self.tasks.append(task)
def start(self):
funcs = []
for task in self.tasks:
funcs.append(task.on_process())
return asyncio.gather(*funcs)