自动执行回滚的上下文管理器
rollbackcontext的Python项目详细描述
目的
有时我们需要执行一系列操作:
op[0], op[1], ... op[N]
这些操作可以分配文件、锁、连接,并且 op[k] 可能取决于 op[k-1] 的结果。每个操作都创建一个上下文。当操作完成时,我们希望销毁这些上下文。有时使用标准的python上下文管理器协议是不可行的,因为事务中涉及的资源数量可以是一个变量。无法将变量号的 与 语句一起使用,而且 contextlib.nested 正在被弃用。有时为每个上下文创建标准的python上下文管理器太冗长了。
这个库实现了一个简洁的上下文管理器,并提出了一个用于回滚的习惯用法。