def get_top_task(self) -> Optional[Task]: for task_type in self._task_types: key = self._get_task_key(task_type) count = self.redis.llen(key) if count == 0: continue data = self.redis.lindex(key, 0) return Task.from_string(data) return None