python多进程读写共享内存,使用管道进行同步通信后是否还需要使用锁机制

我的一个个人实践发现,如果多进程同时读写共享内存,即使使用管道方式进行通信以实现同步也不能实现真正的功能内存数据一致性。
根据下面资料:
https://blog.csdn.net/cswhl/article/details/111291090
可以知道,多进程读写共享内存时可能出现不同进程在不能核心上的L3缓存不一致,也就是说虽然共享内存的数据是只存储了一份,但是两个进程中每个进程在自己的运行的CPU内核的对应L3缓存上其实还有一份独立的对应缓存,这种情况下多进程中的每个进程进行读写的时候其实都是先进行自身空间下的缓存中的数据进行修改,于是就出现了多进行读写共享内存,即使使用管道进行同步通信也有可能出现缓存不一致的问题。
其实这个问题中暗含了这样一个问题:
为什么为什么加锁后多进程共享内存可以缓存一致

相关:
https://www.cnblogs.com/yxysuanfa/p/19102328
https://developer.aliyun.com/article/1062049
https://blog.csdn.net/qq_42982923/article/details/105507769
https://blog.csdn.net/weixin_50064049/article/details/134617400
本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址,还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注处,如有侵权请与博主联系。
如果未特殊标注则为原创,遵循 CC 4.0 BY-SA 版权协议。
posted on 2025-12-21 12:09 Angry_Panda 阅读(2) 评论(0) 收藏 举报
浙公网安备 33010602011771号