我在 Python 中使用執行緒包時遇到問題。我想創建一段時間后發送訊息的不和諧機器人。以前我正在使用,time.sleep()但它使我的機器人在給定的時間段內無用。我發現我可以使用threading.Timer()但我不能讓它作業。示例代碼:
async def send_sth(channel):
await channel.send("some message")
client = discord.Client()
@client.event
async def on_message(message):
if message.content == 'send sth':
timer = threading.Timer(10.0, send_sth, [message.channel])
timer.start()
10 秒后我有錯誤說RuntimeWarning: coroutine 'send_sth' was never awaited。是否可以使用 Timer 回呼運行異步函式?
uj5u.com熱心網友回復:
這比我想象的要容易
client = discord.Client()
@client.event
async def on_message(message):
if message.content == 'send sth':
await asyncio.sleep(10)
await message.channel.send("some message")
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/366711.html
