- 链接地址:https://blog.csdn.net/z__chen/article/details/120247134
- 链接标题:hashmap在多线程下数据丢失问题_hashmap多线程数据丢失-CSDN博客
- 所属网站:blog.csdn.net
- 被收藏次数:3180
文章浏览阅读2.9k次。我们都知道hashmap是非线程安全的。什么是非线程安全呢?个人理解,就是在多线程环境下,一个线程对值做变更时,不会立即同步到其他线程,这时候其他线程获取该值的话就是取到旧值,如果在此基础上进行计算的话就会得到错误的结果。这点应该和java的内存模型有关,java内存分为工作内存和主内存。如图下所示(图为网上所找,侵删):java所有的变量都存储在主内存中,工作内存保存的是主内存的副本,线程所有对变量的操作都是在工作内存中完成的,无法直接操作主内存。而线程写变量到工作内存,再由工作内存同步到主内存,这_hashmap多线程数据丢失
版权声明:本文发布于特牛网址导航 内容均来源于互联网 如有侵权联系删除