簡體   English   中英

如何在循環上只運行一次 function?

[英]How do I run a function on a loop just once?

on_ready中,我像這樣在循環中運行永恆的 function:

@bot.event
async def on_ready():
    bot.loop.create_task(some_function())

但是隨后此功能會運行多次(可能是因為 pm2 自動重啟)。 我怎樣才能確保這個 function 只運行了一次?

您可以設置 boolean 標志來記錄您已調用create_task 僅當您以前從未調用過它時才調用它:

done = False

@bot.event
async def on_ready():
    if not done:
        bot.loop.create_task(some_function())
        done = True

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM