code: async def _cleanup(self):
          
          while True:
              await asyncio.sleep(CLEANUP_INTERVAL_S)
              self._tasks = {t for t in self._tasks if not t.done()}
docs: Periodically removes completed tasks from the collection,
          allowing fire-and-forget tasks to be garbage collected.
  
          This does not delete the task object, it merely removes the reference in the scheduler.