您的位置:首页 > 编程语言 > Python开发

Python多线程 - 使用TheadLocal传递参数

2018-01-05 15:16 302 查看
# -*- 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()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: