当前位置: 首页 > news >正文

(022)FastJson 序列化导致的 java.util.ConcurrentModificationException

文章目录

  • 问题
  • 解决

问题

  1. 在应用启动的时候,程序出现异常。存储类的部分字段如下:
  2. 每分钟进行检测:
  3. 出现了:

解决

  1. ConcurrentHashMap 是线程安全,这个问题,是因为 SiegeWarRoomCache 通过 FastJson 存储在 redis中,在启动的时候加载。虽然字段做了
    privateSet<Long>roomActors=newConcurrentHashSet<>();
    的处理,但是在 FastJson 发序列化的时候,该字段的值被覆盖
    publicSet<Long>getRoomActors(){returnroomActors;}publicvoidsetRoomActors(Set<Long>roomActors){this.roomActors=roomActors;}
    正确的应该是:
    publicSet<Long>getRoomActors(){returnroomActors;}publicvoidsetRoomActors(Set<Long>roomActors){this.roomActors.clear();this.roomActors.addAll(roomActors);}
http://www.jsqmd.com/news/162229/

相关文章:

  • Unity游戏翻译革命:XUnity自动翻译插件深度指南
  • MySQL索引数据结构:B+树 vs 哈希索
  • XUnity自动翻译器终极指南:打破游戏语言障碍的完整解决方案
  • Multi-Paxos和Raft的区别
  • ModelEngine应用编排创新实践:通过可视化编排构建大模型应用工作流
  • 《代码大全2》变量命名:看似简单,却藏着大学问
  • 30 款 Apple 同款核心 SVG 模板(E2 分类精选)
  • PyTorch-CUDA-v2.8镜像对T5模型的微调实践
  • Unity游戏自动翻译终极指南:XUnity.AutoTranslator完整配置与实战教程
  • Unity游戏多语言翻译插件配置与使用完全指南
  • PyTorch-CUDA镜像支持Zero-Shot Learning零样本学习吗?
  • XUnity自动翻译插件:游戏语言障碍的一站式解决方案
  • MySQL锁机制全解:彻底理解行锁、表锁与死锁原理
  • PyTorch-CUDA镜像是否支持ROCm?AMD显卡兼容性分析
  • PyTorch-CUDA-v2.8镜像对ShuffleNet模型的轻量化支持
  • PyTorch镜像中如何切换不同Python版本?
  • 力扣26.有序数组去重:HashSet vs 双指针法
  • 从零实现基于UDS 31服务的MCU程序烧录功能
  • PyTorch-CUDA-v2.8镜像对NeRF神经辐射场的支持
  • PyTorch镜像中实现多模态学习(Multimodal Learning)
  • PCIe-Transaction Descriptor- Attributes Field
  • python基于spring boot的学科课程在线答题考试系统微信小程序_jh8x3
  • Unity游戏翻译神器XUnity.AutoTranslator完整教程:3步搞定游戏汉化
  • Doker简单命令
  • ViGEmBus虚拟手柄驱动:打破PC游戏输入设备壁垒
  • PCIe-Relaxed Ordering and ID-Based Ordering Attributes
  • python基于Spring Boot的智慧农业土壤水质小程序的设计与实现
  • PyTorch-CUDA镜像是否包含cuDNN?版本信息一览
  • 【性能优化】图片渲染性能优化全流程方案详解
  • 12/27