Python 的 contextvars
可以支持 aio
和 替代 threading.local
但是在 Eventlet
、 Gevent
and greenlet
这些第三方协程可以正常工作吗?
Python 的 contextvars
可以支持 aio
和 替代 threading.local
但是在 Eventlet
、 Gevent
and greenlet
这些第三方协程可以正常工作吗?
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
不清楚
Eventlet
、Gevent
andgreenlet
三者关系的,可以看这个文章:Python协程 Gevent Eventlet Greenlet看到一个帖子:Is eventlet compatible with ContextVars?
满足
greenlet>=0.4.17
即可。evenlet
是基于greenlet
的,所以greenlet
支持就是evenlet
支持!但是 gevent 不是,那么 event 支持了 contextvars 了吗?
看看这句话:Gevent includes its own contextvars support, so it works even with old versions of greenlet, and thus with PyPy.