Python 3.x 使派生类的方法异步
我必须创建并使用从上游包派生的类(不可修改) 我想要/需要在派生类中添加/修改一个应该是异步的方法,因为我需要在该方法中等待websocket发送/接收 我试图将async添加到该方法中,但我(从基类方法)得到消息,我的方法来自派生类Python 3.x 使派生类的方法异步,python-3.x,python-asyncio,Python 3.x,Python Asyncio,我必须创建并使用从上游包派生的类(不可修改) 我想要/需要在派生类中添加/修改一个应该是异步的方法,因为我需要在该方法中等待websocket发送/接收 我试图将async添加到该方法中,但我(从基类方法)得到消息,我的方法来自派生类RuntimeWarning:coroutine MyCopyProgressHandler.end从未被等待过 有没有办法将派生类方法“转换”为异步方法?当您需要将同步方法转换为异步方法时。第二个(在执行器中运行)可能是最简单的一个 例如,这就是如何发出同步函数请
RuntimeWarning:coroutine MyCopyProgressHandler.end从未被等待过
有没有办法将派生类方法“转换”为异步方法?当您需要将同步方法转换为异步方法时。第二个(
在执行器中运行)可能是最简单的一个
例如,这就是如何发出同步函数请求的方法。get
以异步运行:
import asyncio
import requests
from concurrent.futures import ThreadPoolExecutor
executor = ThreadPoolExecutor(10)
async def get(url):
loop = asyncio.get_running_loop()
response = await loop.run_in_executor(
executor,
requests.get,
url
)
return response.text
async def main():
res = await get('http://httpbin.org/get')
print(res)
asyncio.run(main())