Asynciorun_until_complete报错RunTimeError。
创始人
2024-09-21 07:00:37
0次

在升级 Python 版本后,该问题通常会被解决。但若是不想升级 Python 版本,可以根据以下方案解决:

将代码中存在阻塞的方法,使用线程或进程池进行异步调用,比如使用 run_in_executor() 方法。

示例:

import asyncio
import concurrent.futures

async def main():
  with concurrent.futures.ThreadPoolExecutor(max_workers=3) as executor:
      loop = asyncio.get_event_loop()
      tasks = [
          loop.run_in_executor(executor, blocking_function_1, args_1),
          loop.run_in_executor(executor, blocking_function_2, args_2)
      ]
      await asyncio.gather(*tasks)

def blocking_function_1(args_1):
    # 阻塞的方法1

def blocking_function_2(args_2):
    # 阻塞的方法2

此外,也可以使用 asyncio.run() 方法替代 run_until_complete() 方法,它是 Python 3.7 中引入的新方法。

示例:

import asyncio    

async def foo():
    # 异步的代码逻辑

async def main():
    await asyncio.gather(foo())

asyncio.run(main())

相关内容

热门资讯

黑科技辅助!微乐广西小程序开挂... 黑科技辅助!微乐广西小程序开挂(辅助),微乐辅助神器好像真的是有透视挂教程一、微乐广西小程序开挂游戏...
黑科技外挂!微信小程序四川微乐... 黑科技外挂!微信小程序四川微乐脚本(外挂),微乐烟台麻将好像有透视挂教程1、实时微信小程序四川微乐脚...
黑科技作弊器!微乐小程序多功能... 黑科技作弊器!微乐小程序多功能修改器(作弊器),微乐邯郸麻将本来真的是有透视挂软件1.微乐小程序多功...
黑科技作弊器!微信小程序游戏破... 黑科技作弊器!微信小程序游戏破解器(作弊器),微乐甘肃摆叫原来是真的有透视挂方法1)微信小程序游戏破...
黑科技透视挂!微信小程序可以开... 黑科技透视挂!微信小程序可以开挂吗(透视挂),微乐邯郸麻将原来真的有透视挂工具小薇(辅助器软件下载)...
黑科技开挂!微乐游戏小程序(开... 黑科技开挂!微乐游戏小程序(开挂),微乐划水麻将竟然是真的有透视挂软件1、完成微乐游戏小程序有辅助插...
黑科技透视器!微乐山西威信小程... 黑科技透视器!微乐山西威信小程序(透视器),微乐烟台麻将一贯真的是有透视挂脚本1、进入游戏-大厅左侧...
黑科技外挂!微乐自建房辅助下载... 黑科技外挂!微乐自建房辅助下载(外挂),微乐打牌都是存在有透视挂方法一、微乐自建房辅助下载游戏安装教...
黑科技透视挂!微乐如何自己建脚... 黑科技透视挂!微乐如何自己建脚本(透视挂),微乐扑克本来真的有透视挂方法1、首先打开微乐如何自己建脚...
黑科技辅助!微乐小程序怎么挂脚... 黑科技辅助!微乐小程序怎么挂脚本(辅助),微乐滨州麻将本来真的有透视挂教程;一、微乐小程序怎么挂脚本...