上一页 1 2 3 4 5 6 7 8 ··· 27 下一页

2025年11月10日

AQS 是什么?

摘要: AQS 是什么? java.util.concurrent.locks.AbstractQueuedSynchronizer,简称 AQS,是 JUC 同步器的底座。像 ReentrantLock、Semaphore、CountDownLatch、ReentrantReadWriteLock、Sta 阅读全文

posted @ 2025-11-10 14:38 滚动的蛋 阅读(22) 评论(0) 推荐(0)

volatile关键词:Java 可见性问题详解与示例:为什么线程写了值,另一个线程却看不见?

摘要: Java 可见性问题详解与示例:为什么线程写了值,另一个线程却看不见? 在多线程编程中,你可能遇到这样一个匪夷所思的现象: 一个线程明明修改了变量,另一个线程却迟迟“看不到”变化,一直在死循环。这并不是 Java 的 bug,而是 Java 内存模型(JMM) 中“可见性”问题的直接体现。 本文用一 阅读全文

posted @ 2025-11-10 13:28 滚动的蛋 阅读(112) 评论(0) 推荐(0)

Java 中 double 的精度问题,以及为什么 BigDecimal 没有这个问题

摘要: Java 中 double 的精度问题,以及为什么 BigDecimal 没有这个问题 当你在 Java 中写出: System.out.println(0.1 + 0.2); // 0.30000000000000004 是不是很诧异?这不是 Java 的“bug”,而是计算机数值表示方式导致的。 阅读全文

posted @ 2025-11-10 03:40 滚动的蛋 阅读(247) 评论(0) 推荐(0)

synchronized` 的“锁升级/路径解析

摘要: synchronized` 的“锁升级/路径 为什么会升级?什么时候升级?升级后发生了什么?该怎么写代码更高效? 0. 先给一个总图(JDK 17+ 的主线) 无锁 → 轻量级锁(用户态 CAS + 自旋) → 重量级锁(ObjectMonitor,阻塞/唤醒) JDK 15 起“偏向锁”已移除,所 阅读全文

posted @ 2025-11-10 02:46 滚动的蛋 阅读(31) 评论(0) 推荐(0)

什么是锁的可重入性?

摘要: 什么是锁的可重入性? 锁的“可重入性”(reentrancy)指:同一线程在已经获得某把锁的情况下,可以“再次”获得这把锁而不会被自己阻塞。实现上通常会为锁维护“持有线程 + 重入计数(hold count)”:同一线程每 lock()/进入一次同步块,计数+1;每次 unlock()/退出一次,计 阅读全文

posted @ 2025-11-10 02:25 滚动的蛋 阅读(90) 评论(0) 推荐(0)

CountDownLatch 与 CyclicBarrier 区别深度解析

摘要: CountDownLatch 与 CyclicBarrier 深度解析:并发编程中的“闸门”与“集合点” 在 Java 并发工具包 java.util.concurrent 中,CountDownLatch 与 CyclicBarrier 是最常用的两种线程同步辅助类。它们像是并发世界的两种“交通信 阅读全文

posted @ 2025-11-10 02:14 滚动的蛋 阅读(119) 评论(0) 推荐(0)

2025年3月22日

binary wang 小程序支付SDK packageValue异常

摘要: 1、第一步:后台统一下单成功,参数如下 2、第二步:小程序发起支付使用参数需要注意不能直接使用packageValue,需要用package接受发起支付 function miniPay(params) { //console.log("[Payment] 支付参数:", { params }); 阅读全文

posted @ 2025-03-22 02:50 滚动的蛋 阅读(58) 评论(0) 推荐(0)

2025年3月9日

ThreadLocal 导致内存泄漏的主要原因

摘要: ThreadLocal 导致内存泄漏的主要原因在于其底层数据结构的弱引用(WeakReference)和线程的长生命周期共同作用。 1. ThreadLocal 的存储结构 每个线程(Thread)内部维护了一个 ThreadLocalMap,用于存储该线程的 ThreadLocal 变量。 键(K 阅读全文

posted @ 2025-03-09 02:38 滚动的蛋 阅读(403) 评论(0) 推荐(0)

2025年3月8日

undo log 与 redo log

摘要: 理解数据库事务日志:Undo Log 与 Redo Log 在 MySQL InnoDB 存储引擎中,为了保证数据的原子性、一致性以及持久性,系统设计了两种重要的日志:undo log(撤销日志)和 redo log(重做日志)。它们分别承担着不同的职责,共同保障事务处理的正确性和高可用性。 1. 阅读全文

posted @ 2025-03-08 02:35 滚动的蛋 阅读(201) 评论(0) 推荐(0)

MySQL 数据库隔离级别与幻读现象

摘要: MySQL 中的隔离级别与幻读现象 1. 前言 在使用数据库时,事务(Transaction)是保证数据一致性的重要手段。为了让事务并发执行而尽量减少冲突和数据不一致,SQL 标准定义了四种常见的隔离级别: READ UNCOMMITTED READ COMMITTED REPEATABLE REA 阅读全文

posted @ 2025-03-08 02:30 滚动的蛋 阅读(219) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 ··· 27 下一页

导航