用法:
run(callable, *args, **kwargs)
在调用
run
方法的上下文对象中执行callable(*args, **kwargs)
代码。如果发生异常,则返回执行结果或传播异常。callable
对任何上下文变量所做的任何更改都将包含在上下文对象中:var = ContextVar('var') var.set('spam') def main(): # 'var' was set to 'spam' before # calling 'copy_context()' and 'ctx.run(main)', so: # var.get() == ctx[var] == 'spam' var.set('ham') # Now, after setting 'var' to 'ham': # var.get() == ctx[var] == 'ham' ctx = copy_context() # Any changes that the 'main' function makes to 'var' # will be contained in 'ctx'. ctx.run(main) # The 'main()' function was run in the 'ctx' context, # so changes to 'var' are contained in it: # ctx[var] == 'ham' # However, outside of 'ctx', 'var' is still set to 'spam': # var.get() == 'spam'
当从多个 OS 线程对同一上下文对象调用或递归调用时,该方法会引发
RuntimeError
。
相关用法
- Python contextvars.ContextVar.reset用法及代码示例
- Python contextlib.AsyncContextDecorator用法及代码示例
- Python contextlib.AsyncExitStack用法及代码示例
- Python contextlib.ExitStack.pop_all用法及代码示例
- Python contextlib.redirect_stdout用法及代码示例
- Python contextlib.aclosing用法及代码示例
- Python contextlib.ExitStack用法及代码示例
- Python contextlib.contextmanager用法及代码示例
- Python contextlib.closing用法及代码示例
- Python contextlib.nullcontext用法及代码示例
- Python contextlib.ContextDecorator用法及代码示例
- Python contextlib.suppress用法及代码示例
- Python configparser.ConfigParser.readfp用法及代码示例
- Python configparser.ConfigParser.BOOLEAN_STATES用法及代码示例
- Python configparser.BasicInterpolation用法及代码示例
- Python configparser.ExtendedInterpolation用法及代码示例
- Python configparser.ConfigParser.SECTCRE用法及代码示例
- Python configparser.ConfigParser.read用法及代码示例
- Python collections.somenamedtuple._replace用法及代码示例
- Python collections.somenamedtuple._asdict用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 contextvars.Context.run。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。