我无法理解contextvars在线程和异步循环中共享值的用处。
它们就像字典一样。
在线程中,由于GIL,我认为字典非常安全(请参见Using a global dictionary with threads in Python)。
在asyncio中,我认为只有一部分代码同时执行,因此不应有任何并发访问(我可能是错的)。
我读了PEP的contextvars,但是与同步无关。看起来目标是跨线程具有不同版本的上下文(例如,十进制)。
可以简单地用全局全局变量安全地替换contextvars,以在线程和异步函数中共享值吗?