说"协程从未等待过",但函数中存在等待



我得到一条错误消息,其中说我忘记等待一个例程,这不是真的,如代码中突出显示的那样。

功能如下:

def _aio(self, f):
""" Make some function run asynchronously. """
async def aio_wrapper(**kwargs):
f_bound = functools.partial(f, **kwargs)
loop = asyncio.get_running_loop()
return await loop.run_in_executor(self._executor, f_bound)
return aio_wrapper
下面是我使用的代码:
for key in image_keys:
res = self._aio(self._client.get_object)(Bucket=self.bucket_name, Key=key)
print(type(res))

你不需要await,aio_wrapper:

res = await self._aio(self._client.get_object)(Bucket=self.bucket_name, Key=key)

当运行self._aio(self._client.get_object)时,包装器执行并返回一个必须调用的协程函数和await

最新更新