后端岗位面试题更新 2026-08-05
如果一个 long 类型变量被一个线程修改、另一个线程读取,是否需要加锁?为什么?
阿里巴巴后端开发电商风险判断技术原理Java
考察说明
考察并发读写下基础类型可见性、原子性与缓存一致性理解
回答思路
- 明确 long 在 Java 中并非保证原子读写的类型
- 说明 volatile 可保证可见性与原子性但不保证复合操作
- 解释不加锁可能导致读到旧值或撕裂值
- 根据具体场景判断是否需要锁或改用原子类
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。