使用

    import threading

    ctx = threading.local()

将这个类实例化得到一个全局对象,但是不同的线程使用这个对象存储的数据其它线程不可见(本质上就是不同的线程使用这个对象时为其创建一个独立的字典)。

下面 是_collection中的一段源码

python - threading.local()的使用

实例化ThreadLocalRegistry 后self.registry 被赋值 threading.local()

在__call__中会self.regitry被赋予属性value,这样在使用多线程是就能在全局变量中开辟一块,线程的独立空间,为我们对不同的线程做相应的处理。

相关文章:

  • 2022-12-23
  • 2021-08-28
  • 2021-07-16
  • 2021-09-16
  • 2021-07-01
  • 2022-12-23
  • 2022-12-23
  • 2021-12-30
猜你喜欢
  • 2021-06-05
  • 2022-02-02
  • 2021-09-30
  • 2022-12-23
  • 2021-10-14
  • 2021-10-13
相关资源
相似解决方案