线程之间本身是数据共享的,当多个线程同时修改一份数据的时候,数据就可能不
准确,特别是线程量特别大的时候,为了保证数据准确性:
(1) 通过线程锁Lock
(2)通过local数据隔离
from threading import local, Thread loc = local() # 产生一个对象 def func(name, age): global loc loc.name = name loc.age = age print(loc.name, loc.age) Thread(target=func, args=("晨露中", 20)).start() Thread(target=func, args=("周金波", 30)).start()
执行结果:
晨露中 20 周金波 30
原文地址:https://www.cnblogs.com/lyj910313/p/10793265.html
时间: 2024-11-09 19:00:38