-
JVM对象内存分配在哪里?从堆内存到栈上分配全面解析
JVM对象内存分配在哪里?从堆内存到栈上分配全面解析
NEW个对象 2026-06-10
-
Java锁升级机制详解:偏向锁、轻量级锁、重量级锁是如何一步步升级的?
Java中的synchronized并不是一开始就使用重量级锁。为了减少线程竞争带来的性能损耗,HotSpot JVM设计了锁升级机制。锁会根据竞争情况经历无锁 → 偏向锁 → 轻量级锁 → 重量级锁的升级过程。锁只能升级不能降级,从而保证线程安全并提高系统吞吐量。
NEW个对象 2026-06-10
-
JVM创建对象的内存是如何分配的?如何保证线程安全?
Java对象默认在堆中分配内存。当多个线程同时创建对象时,JVM通过CAS、自旋重试、本地线程分配缓冲区(TLAB)等机制保证内存分配过程的线程安全。对象创建过程涉及类加载检查、内存分配、零值初始化、对象头设置以及构造方法执行等多个步骤,是JVM面试中的高频考点。
NEW个对象 2026-06-09
-
三数之和:回溯通过排序去重解法
三数之和是经典的数组与回溯算法问题,核心目标是在整数数组中找到所有不重复的三元组,使其和为 0。 该问题在面试中常用于考察:搜索能力 + 去重逻辑 + 剪枝优化,属于典型中高频算法题。三数之和是经典的数组与回溯算法问题,核心目标是在整数数组中找到所有不重复的三元组,使其和为 0。 该问题在面试中常用于考察:搜索能力 + 去重逻辑 + 剪枝优化,属于典型中高频算法题。
NEW个对象 2026-06-08
-
从算法 + 数据结构 + 规则,解释一下Redisson分布式锁
用“算法 + 数据结构 + 规则”来拆 Redisson 分布式锁,会比单纯讲原理更清晰,本质上它不是“一个锁”,而是一套基于 Redis 的可重入、可续期、可竞争的分布式同步算法实现。
NEW个对象 2026-06-06
-
数据库出现死锁的案例
报告生成案例: 报告编辑的时候:更新模板内容,更新报告引用的id。 报告生成的时候:更新报告引用的id,再更新模板内容。
NEW个对象 2025-08-01
-
java代码,随机打乱一个数组
问题1:j不会越界吗? next生成数在【0到i+1】之间。 问题2:代码的具体逻辑 生成一个【0到i+1】的之间的随机数,与【i】进行互换
NEW个对象 2025-02-21
-
如何创建线程池?
1、通过ExecutorService,
NEW个对象 2025-02-19
-
链表反转
链表反转
NEW个对象 2025-02-12
-
有哪些数据安全的方案?
1、锁 2、单线程,比如:redis 3、不共享变量,比如:ThreadLocal 4、原子操作,比如:AtomicInteger 5、不可变模式,比如:一旦创建不能修改,修改就会再次创建一个新的对象,String 6、读写分离,写时复制,比如:CopyOnWriteArrayList
NEW个对象 2025-02-11