Discord.py如何检查任务是否处于活动状态?

时间:2020-03-22 10:31:18

标签: discord.py discord.py-rewrite

我想在用户需要时启动和停止启动,但是出现错误RuntimeError: Task is already launched and is not completed.,如果任务处于活动状态,该如何停止该任务然后重新启动它?

@tasks.loop(minutes=1)
async def FunctionTask():
    print("Task running")

@client.event
async def on_ready():
    FunctionTask.start()

@client.command()
async def start(ctx):
    FunctionTask.restart()

@client.command()
async def stop(ctx):
    FunctionTask.stop()

谢谢您的回答。

1 个答案:

答案 0 :(得分:0)

我没有遇到您遇到的问题,但是您应该在文档中尝试解决方案

注意:如果内部函数引发一个错误,可以在完成之前处理该错误,则它将重试,直到成功为止。 如果不希望这样做,请在通过clear_exception_types()停止操作之前删除错误处理,或者改用cancel()。

尝试使用cancel()代替stop(),看看是否能解决问题。