2025-3-17 腾讯云-大数据方向-成都面试

ConcurrentHashMap了解过吗

适用场景

  • 高并发环境,多个线程同时读写(如缓存、计数器)。
  • 需要 HashMap 的功能,但又要保证线程安全
  • 适合读多写少的场景(因为写操作需要 CAS 或锁)。

volatile是什么,解决了什么问题

volatile 是 Java 关键字,用于 保证变量的可见性 ,防止 指令重排 ,但 不保证原子性

(1)可见性问题

在多线程环境下,一个线程对变量的修改,另一个线程可能看不到 ,因为线程可能会从 CPU 缓存 读取变量,而不是最新的主存数据。

(2)防止指令重排

JVM 和 CPU 可能会优化代码执行顺序 ,导致执行结果和代码顺序不同。volatile 防止重排序,确保代码按照预期顺序执行。

(3)不保证原子性

不能 代替 synchronized 进行 原子操作

treeset和hashset区别

使用过JVM的哪些模块

jvm中,堆,栈,元空间存储的数据

String nameA = "123" String nameB = "123"

nameA和nameB在元空间中映射的是同一个地址吗? 不是

  • "123" 存储在 字符串常量池(方法区)。
  • 变量 nameA 是引用变量,存储在 中。
  • 如果用 new String("123"),则会在 中再创建一个 String 对象。

反向代理解决什么问题

算法:多个有序数组[1,2,4],[2,4,5],[2,6,7],输出有序集合的交集,Java实现

相关推荐
半桔8 分钟前
【Linux手册】进程的状态:从创建到消亡的“生命百态”
linux·运维·服务器·汇编·深度学习·面试
wenchun00133 分钟前
【面试经验】注册中心与配置中心选择CP还是AP
面试·职场和发展
掘金安东尼2 小时前
,别重复造轮子!新宣【宝藏工具】帮你提效
前端·面试·github
天天摸鱼的java工程师2 小时前
线程池阻塞与核心线程死亡:我朋友面试被问倒
java·后端·面试
liang_jy3 小时前
Activity 启动流程(六)—— Activity 窗口显示
android·面试·源码
巴别塔的饿灵3 小时前
「具体问题」后端返回大量数据,前端要如何处理?
前端·面试
独行soc3 小时前
2025年渗透测试面试题总结-渗透测试工程师(题目+回答)
linux·科技·安全·网络安全·职场和发展·渗透测试·区块链
司铭鸿3 小时前
Java响应式编程:Project Reactor与WebFlux高并发实践
java·开发语言·算法·职场和发展·生活
北京_宏哥4 小时前
🔥《刚刚问世》系列初窥篇-Java+Playwright自动化测试-21- 操作鼠标拖拽 - 中篇(详细教程)
java·前端·面试
我不是迈巴赫4 小时前
开源分享:实习中开发的单点登录Cookie管理神器 | 从痛点到产品的完整实践
前端·面试·github