多线程threading.local的作用?

Posted apollo1616

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程threading.local的作用?相关的知识,希望对你有一定的参考价值。

1.作用:

内部自动为每个线程维护一个空间(字典),用于当前存取属于自己的值.保证线程之间的数据隔离.
{
    线程ID: {...}
    线程ID: {...}
    线程ID: {...}
    线程ID: {...}
}
    

2.示例:

import time
import threading

v = threading.local()


def func(arg):
    # 内部会为当前线程创建一个空间用于存储:phone=自己的值
    v.phone = arg
    time.sleep(2)
    # 去当前线程自己空间取值
    print(v.phone, arg)


for i in range(10):
    t = threading.Thread(target=func, args=(i,))
    t.start()

以上是关于多线程threading.local的作用?的主要内容,如果未能解决你的问题,请参考以下文章

多线程局部变量之threading.local()用法

flask上下文管理之threading.local

threading.local学习

threading.local

Python的线程22 Threading.local() 线程的本地数据

python 复习—并发编程——线程锁threading.local线程池生产者消费者模型线程安全