aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pydis_core/utils/scheduling.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/pydis_core/utils/scheduling.py b/pydis_core/utils/scheduling.py
index eced4a3d..8f9d711c 100644
--- a/pydis_core/utils/scheduling.py
+++ b/pydis_core/utils/scheduling.py
@@ -10,6 +10,8 @@ from functools import partial
from pydis_core.utils import logging
+TASKS = set[asyncio.Task]
+
class Scheduler:
"""
@@ -238,6 +240,9 @@ def create_task(
task = event_loop.create_task(coro, **kwargs)
else:
task = asyncio.create_task(coro, **kwargs)
+
+ TASKS.add(task)
+ task.add_done_callback(TASKS.discard)
task.add_done_callback(partial(_log_task_exception, suppressed_exceptions=suppressed_exceptions))
return task