news 2026/6/10 13:10:27

Java常见技术分享-17-多线程安全-并发编程的核心问题的解决方案

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java常见技术分享-17-多线程安全-并发编程的核心问题的解决方案

可见性的解决方案

  • volatile 关键字(只能修饰变量)。 他的作用是 告诉JVM 这个变量不允许被缓存, 每次读写必须直接操作主内存。 这样 就能保证 没有缓存一致性的问题。
  • synchronized 关键字。 在进入代码块的时候 ,线程会读取主内存的变量值到自己的工作内存, 在执行完操作后, 又会写到主内存中,这样其他的线程就能立即看到。

原子性的解决方案

  • synchronized关键字, 把需要执行原子操作的代码块锁住, 就行了, 因为这个关键字 本身是互斥锁。
  • 使用AtomicInteger 原子类,这个类是靠CPU 的CAS指令 来确保原子性的,即乐观锁(核心思想 先尝试,失败了再重试)的底层实现,且实现方式是自旋锁, 所以在竞争激烈的时候,线程一直占用着CPU资源, 很耗费CPU资源, 不如用synchronized

有序性的解决方案

  • volatile 关键字。 他的作用是 禁止 编译器和CPU的指令排序优化,给多线程协作加上了顺序保障。
  • synchronized关键字, 因为同一个代码块只能被一个线程占用, 所以对于同一个代码块 不会有多线程协作, 也就不会有有序性的问题。 能确保指令重排后, 执行后的结果如预期一样。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:08:56

STL专项:queue 队列

queue queue 提供了先进先出&#xff08;First In First Out&#xff09;的数据结构。队列在尾部添加元素&#xff0c;在头部删除元素。 常见的应用有&#xff1a;模拟、约瑟夫环、bfs、分支限界搜索、单调队列等算法。 创建队列 queue<int> q; //创建一个 int 类…

作者头像 李华
网站建设 2026/6/10 10:54:32

给老公改个嘎嘎甜的备注

干饭一级选手&#x1f35a; 家庭ATM机&#x1f4b8;剩饭处理器♻️ 专属抬杠员&#x1f645;沙发黏人精&#x1f6cb;️ 摸鱼总指挥&#x1f41f;零食小偷小摸&#x1f35f; 憨憨显眼包&#x1f61c;起床困难户&#x1f634; 废话输出机&#x1f4ac;家务甩锅王&#x1f373; 快…

作者头像 李华
网站建设 2026/6/10 10:50:26

YOLO与Crossplane跨云平台集成:统一资源编排

YOLO与Crossplane跨云平台集成&#xff1a;统一资源编排 在智能制造工厂的监控中心&#xff0c;一台部署在 AWS 上的摄像头突然检测到传送带异常&#xff0c;系统毫秒级触发告警。与此同时&#xff0c;位于 Azure 上的备用推理节点已自动启动并接管任务——这一切的背后&#…

作者头像 李华
网站建设 2026/6/10 10:57:45

hello-agents 学习笔记:解锁智能体三大经典范式,从原理到实战

在上一章吃透大语言模型的核心逻辑后&#xff0c;终于迎来了最令人兴奋的实战环节 —— 亲手构建智能体。如果说大语言模型是智能体的 "大脑"&#xff0c;那这些经典范式就是让大脑学会 "思考与行动" 的行为准则。市面上早已不乏 LangChain、LlamaIndex 这…

作者头像 李华
网站建设 2026/6/10 10:57:26

在微网的世界里,电能共享是个大话题。今天咱们聊聊如何用非对称纳什谈判来优化多微网间的电能共享,顺便加点代码,让大家感受一下这个高级玩意儿

基于非对称纳什谈判的多微网电能共享运行优化策略 关键词&#xff1a;纳什谈判 合作博弈 微网 电转气-碳捕集 P2P电能交易交易 参考文档&#xff1a;《基于非对称纳什谈判的多微网电能共享运行优化策略》完美复现 仿真平台&#xff1a;MATLAB CPLEXMOSEK/IPOPT 主要内容&…

作者头像 李华
网站建设 2026/6/10 10:50:45

YOLO模型灰度版本灰度结束后的用户通知

YOLO模型灰度版本结束后的用户通知机制解析 在智能制造产线高速运转的车间里&#xff0c;一台搭载YOLOv8的视觉检测设备正以每秒百帧的速度扫描着流水线上的电子元件。突然&#xff0c;系统后台触发了一条全量上线通知&#xff1a;“新版目标检测模型已完成验证&#xff0c;正式…

作者头像 李华