# -*- coding:utf-8 -*-
"""
一个ThreadLocal变量虽然是全局变量,但每个线程都只能读写自己线程的独立副本,互不干扰。
ThreadLocal解决了参数在一个线程中各个函数之间互相传递的问题。
"""
import threading
# 获取ThreadLocal实例
local_var=threading.local()
def show():
print("当前线程:{0},参数name={1}".format(threading.current_thread().name,local_var.name))
def func(arg):
local_var.name=arg
show()
def main():
t1=threading.Thread(target=func,args=("小三",),name="Thread-A")
t2=threading.Thread(target=func,args=("小er",),name="Thread-B")
t1.start()
t2.start()
if __name__ == '__main__':
main()
Python多线程 - 使用TheadLocal传递参数
最新推荐文章于 2024-06-20 20:09:06 发布