import asyncioimport contextvars# 创建本地变量local_var = contextvarsContextVarlocal_varasync def coro1 # 在协程中设置本地变量的值 local_varset1async def coro2 # 获取本地变量的值并在控制台输出 value = local_varget prin
输出结果为1,证明本地变量在协程之间共享
代码修改如下,让coro2在coro1之后执行
import asyncio import contextvars
创建本地变量
local_var = contextvars.ContextVar("local_var")
async def coro1(): # 在协程中设置本地变量的值 local_var.set(1)
async def coro2(): # 获取本地变量的值,并在控制台输出 value = local_var.get() print(value)
创建事件循环对象
loop = asyncio.get_event_loop()
运行协程1
loop.run_until_complete(coro1())
运行协程2
loop.run_until_complete(coro2())
关闭事件循环对象
loop.close()
原文地址: https://www.cveoy.top/t/topic/clf0 著作权归作者所有。请勿转载和采集!