高并发的情况下,如果处理大量请求修改同一样变量,用copy不用加锁。


modif_dict = {'name': None, 'age':None}

假如上面的数据是一个大量并发读取并修改的数据

modif_dicf['name'] = 'xiaom'

modif_dict['age'] = 18

 

像上面这样的数据有大量的请求写入,为了防止高并发时数据重复写入,数据出现问题。

可以在前面添加

param = modif_dicy.copy()

param['name'] = 'xiaobai'

param['age'] = 20

 

如果从我的角度理解,因为使用了copy,每一份进来的请求数据都会生成一个独立的内存地址,这样的话,每一个并发的请求都在自己独立的地址上面对数据进行操作,

避免了如果是同一块内存地址进行操作时,产生数据的偏差。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM