python - 在删除文本通道之前异步等待指定时间不和谐
问题描述
经过几次检查后,我想删除一个不和谐频道。但在这样做之前,我想发送一个嵌入消息,然后等待 3 秒。我希望等待期是非阻塞的。asyncio.sleep() 是实现这一目标的好方法吗?如果是这样,那么我怎样才能做到这一点,这样就不需要等待新的命令了?
await ctx.send(embed=embed)
if delete_channel:
asyncio.sleep(3)
await ctx.channel.delete()
解决方案
是的,asyncio.sleep
它是一个非阻塞协程,因为它是异步运行的。它只是暂时挂起当前线程,同时仍然允许所有其他线程正常运行。你唯一的问题是缩进(这甚至不接近有效的缩进语法),并且asyncio.sleep
是一个协程,所以你需要await
它。
推荐阅读
- validation - 表单验证的最佳实践
- python - 用另一个数据帧中的数据替换数据帧中的数据
- excel - 在 VLOOKUP 中选择两个值 (value, table, col_index, [range_lookup])
- api - 如何在另一个解决方案中从 MVC 项目调试 Web API 项目
- php - 如何显示 MS。HTML 中的 Office VML 公式?
- c# - 如何杀死asp.net核心中的线程
- octopus-deploy - “目标”在部署“删除附加文件”上意味着什么
- django - 有没有办法将自定义python脚本的返回值用于django模板?
- c# - Entity Framework Core 使用不明确的列名生成 SQL
- php - Webservice注册“created_by”用户