123456789101112131415161718192021222324252627282930313233343536 |
- '''Created 16 Nov 2022 Levi'''
- from collections import deque
- import asyncio
- import mail_alert
- async def main() -> None:
- container: set = set()
- try:
- while True:
- # loop = asyncio.get_event_loop()
- # tasks = map(asyncio.create_task,
- # [mail_alert.mail_alert(container)
- # # mail_alert.mail_alert2()
- # # mail_alert.mail_alert3()
- # ])
- tasks = [mail_alert.mail_alert(container),
- mail_alert.mail_alert2(container),
- mail_alert.mail_alert3(container)]
- # result = await asyncio.wait(tasks)
- results = await asyncio.gather(*tasks)
- # print(result)
- for result in results:
- if result not in container:
- container.add(result)
- # await asyncio.sleep(1)
- except KeyboardInterrupt:
- print('Cancelling all tasks...')
- for task in tasks:
- task.cancel() # noqa
- await asyncio.gather(*tasks, return_exceptions=True)
- print('All tasks cancelled.')
- if __name__ == '__main__':
- asyncio.run(main())
|