我有一个Python2Django项目,它是用gunicorn启动的,并在代码中编写了很多threading.currentThread().xxxxxx ='some value'。
因为协同线程重用相同的线程,所以我很好奇gevent如何保证在协同线程A( currentThread thread 1)中创建的变量不会影响coroutine (同级线程1)。
毕竟,代码的编写是:
import threading
threading.currentThread().xxxxx ='ABCD'而不是
import gevent
gevent.currentCoroutine().xxxxx ='ABCD' (simulate my guess)谢谢你的帮忙
发布于 2021-09-12 04:05:18
据我所知并没有。普通Gevent运行在同一个线程中--如果您在一个协同线中修改该线程上的某个内容,那么它也将在另一个协同线程中被修改。
如果这是一个关于火鸟的问题,那是另一回事,下面的答案有一些非常详细的- https://stackoverflow.com/a/41696500/7970018。
https://stackoverflow.com/questions/69148274
复制相似问题