Python3.5的AsyncExitStack backport+
async-exit-stack的Python项目详细描述
< Python 3.5+< /H2>的AycCyExtStad后端
这个包包含来自cpython项目的代码。
安装
pip install async_exit_stack
使用示例
fromasync_exit_stackimportAsyncExitStackasyncdefsome_async_function():asyncwithAsyncExitStack()asstack:connections=[awaitstack.enter_async_context(get_connection())foriinrange(5)]# All opened connections will automatically be released at the end of# the async with statement, even if attempts to open a connection# later in the list raise an exception.
参考值
参考Python 3.7 contextlib documentation 一个完整的参考和更多的上下文。
classAsyncExitStack
enter_async_context(cm)
- 类似于enter_context(),但需要一个异步上下文管理器。
push_async_exit(exit)
- 类似于push(),但需要异步上下文管理器或协同路由。
push_async_callback(callback,*args,**kwds)
- 类似于callback(),但需要协同路由。
aclose()
- 与close()类似,但正确处理可等待的内容。
close()方法未实现,必须改用aclose()
历史
1.0.0(2018-05-07)
- 基于Python3.7B4的第一个版本。