擅长:python、mysql、java
<p>我不能重现这个问题。下面的代码对我来说运行得很好(python3.7.1)。在</p>
<p>请测试它在您的环境中是否运行良好,是否是alter-question以提供最少的可复制示例。在</p>
<pre><code>import asyncio
import abc
import contextlib
from typing import AsyncIterator
class Test(abc.ABC):
@abc.abstractmethod
async def request(self) -> AsyncIterator:
pass
class SubTest(Test):
@contextlib.asynccontextmanager
async def request(self) -> AsyncIterator:
await asyncio.sleep(1)
yield 1
await asyncio.sleep(1)
async def main():
obj = SubTest()
async with obj.request() as res:
print(res)
asyncio.run(main())
</code></pre>