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实现

相关推荐
swipe8 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
阳火锅12 小时前
😭测试小姐姐终于不骂我了!这个提BUG神器太香了...
前端·javascript·面试
林希_Rachel_傻希希14 小时前
js里面的proxy理解。以及vue3响应式数据设计底层
前端·javascript·面试
用户15630681035118 小时前
Day01 | 什么是Agent?
面试
写代码的皮筏艇18 小时前
React中的forwardRef
前端·react.js·面试
蝎子莱莱爱打怪1 天前
XZLL-IM干货系列 03|消息 ID 设计:一个 UUID 搞不定的事,我用两个 ID 解决了
后端·面试·开源
梯度不陡2 天前
AI 到底能不能从零写软件?ProgramBench 和 RepoZero 给出了两种答案
前端·javascript·面试
胡萝卜术2 天前
滑动窗口最大值:从暴力到单调队列,层层优化全解析
前端·javascript·面试
沉默王二2 天前
面试结束后,我反问:“就面个实习至于上这么大强度吗?”面试官:“你对 RAG、Agent、MCP、Skill 理解得很到位,所以要求高一点。”
面试·agent·ai编程
假如让我当三天老蒯2 天前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试