import time, uuid, signal, random, os class TimeWaster: def __init__(self): self.running = True self.jobs: dict = {} def handleNewJob(self): jobId: uuid.UUID = uuid.uuid4() self.jobs[jobId] = "exists i guess" def handleCancelJob(self): pass def quit(self): self.running = False def main(self): while self.running: if len(self.jobs) == 0: time.sleep(0.01) else: uuid = self.jobs.keys[0] job = self.jobs[uuid] time.sleep(random.randrange(1, 10) / 10) result: JobResult = JobResult(uuid, "done i guess") os.write(1, result) class JobResult: def __init__(self, uuid, result) -> None: self.uuid = uuid self.result = result if __name__ == "__main__": TimeWaster().main()