[ java 锁 - 04 - Integer o = 1 作为 锁的问题]

news/2025/10/26 17:20:54/文章来源:https://www.cnblogs.com/shiyuzhahan/p/19167047

关于 Integer 作为锁对象的风险总结

核心结论

Integer(如 Integer lock = 1;)不适合作为 synchronized 的锁对象,因缓存复用和不可变性导致同步逻辑失效。

关键风险点

  1. 缓存复用导致锁冲突
    Java 对 [-128, 127] 范围内的 Integer 实现缓存池复用,不同变量(如 lockA = 1lockB = 1)会指向同一对象。
    → 后果:无关线程竞争同一把锁,破坏同步隔离性,降低并发效率。

  2. 不可变性引发锁替换
    Integer 是不可变类,若对锁对象重新赋值(如 lock = 2),会导致锁引用指向新对象。
    → 后果:同步块实际锁定的对象变化,多个线程可同时进入临界区,破坏线程安全。

final 修饰的局限性

  • finalfinal Integer lock = 1)可避免锁被替换,但无法解决缓存复用问题(仍可能与其他 Integer(1) 锁冲突)。

正确替代方案

使用 final Object 作为锁对象:

private final Object lock = new Object(); // 最优解
  • 唯一性new Object() 每次创建独立实例,无缓存复用,确保锁隔离。
  • 稳定性final 修饰保证引用不可修改,避免锁替换。

总结

Integer 因缓存机制和不可变性,存在锁冲突和替换风险,不适合作为锁对象。优先使用 final Object,从根源上避免同步问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/946873.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年自动提升机厂家权威推荐榜单:专业制造与高效解决方案深度解析

2025年自动提升机厂家权威推荐榜单:专业制造与高效解决方案深度解析 在工业自动化快速发展的今天,自动提升机作为物料输送系统的核心设备,其性能优劣直接影响生产效率和运营成本。随着智能制造和工业4.0理念的深入应…

golang: gin项目常用第三方库

一,安装gin $ go get github.com/gin-gonic/gin@latest二,安装zap $ go get -u go.uber.org/zap三,安装validator $ go get -u github.com/go-playground/validator/v10四,安装gorm gorm $ go get -u gorm.io/gorm …

ssh: 连接报错

一,报错信息: $ ssh -p 22 root@123.124.125.84 Unable to negotiate with 123.124.125.84 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss 二,问题原因 个错误消息表明你的SSH客户端和服…

python3: ubuntu上安装时报错: No module named zlib

一,报错信息: Traceback (most recent call last):File "<frozen zipimport>", line 620, in _get_decompress_func ModuleNotFoundError: No module named zlib二,解决: 安装zlib库 # wget https:/…

2025年提升机厂家权威推荐榜:自动提升机、垂直提升机、斗式提升机、物料提升设备源头厂家精选

2025年提升机厂家权威推荐榜:自动提升机、垂直提升机、斗式提升机、物料提升设备源头厂家精选 在工业自动化快速发展的今天,提升机作为物料输送系统的核心设备,其性能直接影响生产效率和运营成本。随着智能制造理念…

[java 锁 - 03 重入写法 ]

可重入锁的核心是“同一线程可重复获取同一把锁”,Java 中 synchronized 和 ReentrantLock 都是可重入锁,写法各有特点。下面分别两种锁的可重入用法示例,清晰展示“重复获取锁”的场景: 一、synchronized 可重入写…

2025年包装机厂家权威推荐榜:自动包装机,半自动包装机,高效包装设备源头厂家精选与选购指南

2025年包装机厂家权威推荐榜:自动包装机,半自动包装机,高效包装设备源头厂家精选与选购指南 随着制造业智能化转型的深入推进,包装机械行业正迎来技术革新的关键时期。自动包装机和半自动包装机作为生产线的重要环…

实用指南:Golang 中的字符串:常见错误和最佳实践

实用指南:Golang 中的字符串:常见错误和最佳实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

2025年自动上料机厂家推荐排行榜:螺旋上料机,真空上料机,粉末上料机,颗粒上料机专业制造商精选指南

2025年自动上料机厂家推荐排行榜:螺旋上料机,真空上料机,粉末上料机,颗粒上料机专业制造商精选指南 随着工业自动化进程的加速推进,自动上料机作为生产线上的关键设备,其技术水平和性能表现直接影响着生产效率和…

完整教程:iOS 抓包工具有哪些?实战对比、场景分工与开发者排查流程

完整教程:iOS 抓包工具有哪些?实战对比、场景分工与开发者排查流程2025-10-26 17:09 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto …

OI 笑传 #22

Hitsuzetsu技巧场,题目都不难。 1给定字符串 \(S\) 和许多人名字的缩写字符串 \(T\),判断是否存在一个分割点 \(p\)(\(1 \leq p < |S|\)),使得:子串 \(S[1..p]\) 可划分成若干“拼音”(至少两个小写英文字母…

2025长沙1024程序员日:为开发者职业发展插上腾飞之翼

2025长沙1024程序员日:为开发者职业发展插上腾飞之翼2025长沙1024程序员日:为开发者职业发展插上腾飞之翼 开发者目前最关注的是什么? 相信大多数人的答案是:AI来了,我的工作怎么办? 8月份,斯坦福发布的《关于A…

20232315 2025-2026-1 《网络与系统攻防技术》实验三实验报告

20232315 2025-2026-1 《网络与系统攻防技术》实验三实验报告20232315 2025-2026-1 《网络与系统攻防技术》实验三实验报告 目录一、实验基本信息二、实验内容三、实验要求四、实验过程4.1 正确使用msf编码器,使用msf…

2067C cf1500

题目描述: C. 九进制问题 时间限制:每个测试2秒 内存限制:每个测试256兆字节 给定一个正整数 n。每次操作中,你可以给 n 加上任意一个十进制表示仅由数字 9 组成的正整数(数字 9 可以重复出现多次)。 请问至少需…

兼职日志-mysqlpython出图

背景 1、win安装mysql 安装包https://downloads.mysql.com/archives/installer/ 安装步骤https://blog.csdn.net/mumiandeci/article/details/134520684 数据库连接工具https://www.hexhub.cn/CREATE DATABASE IF NOT …

2025东莞包装机/自动包装机/半自动包装机厂家推荐垚林机械,精准高效耐用!

当前包装设备领域的技术挑战与突破包装机械行业正面临着前所未有的技术革新压力。随着制造业智能化转型的加速,传统包装设备在精度、效率和稳定性方面暴露出诸多问题。据统计,目前仍有超过35%的制造企业因包装环节的…

使用pyautogui完成简单的游戏功能--皇室战争降杯

背景简介 有时候我们需要进行游戏的简单完成日常任务,例如皇室战争这个手机游戏,这种卡牌游戏很吃卡牌等级,由于我是国际服新号,等级不太高,不想打到太高分数,避免碰到高等级高卡牌高强度对手,但手动降低杯数太…

彻底清除浏览器缓存

代码如下: localStorage.clear(); sessionStorage.clear(); if (caches in window) {caches.keys().then(names => {names.forEach(name => caches.delete(name));console.log(Service Worker缓存已清除);}); }…

2025 年 10 月系统门窗厂商榜单揭晓,专业工艺制造与品牌保障口碑优选

2025 年 10 月系统门窗厂商榜单由建筑金属结构协会、家具装饰业商会联合发布,此次评选聚焦系统门窗 “工艺精细化、保障全周期” 核心要求,以《铝合金门窗》(GB/T 8478-2008)及《系统门窗技术要求》为双重技术基准…

2025自动上料机厂家推荐东莞市垚林机械,高效输送精准控料!

2025自动上料机厂家推荐东莞市垚林机械,高效输送精准控料! 在现代工业生产中,自动上料机作为自动化生产线的重要组成部分,其性能直接关系到生产效率和产品质量。随着工业4.0时代的深入发展,自动上料技术面临着新的…