1 2 3 4 5 ··· 23 下一页

2025年3月9日

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

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

posted @ 2025-03-09 02:38 滚动的蛋 阅读(4) 评论(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 滚动的蛋 阅读(6) 评论(0) 推荐(0) 编辑

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

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

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

2025年2月27日

为什么 `HashMap` 在 Java 8 之后选择使用红黑树,而不是普通的平衡二叉树?

摘要: 为什么 HashMap 在 Java 8 之后选择使用红黑树,而不是普通的平衡二叉树? 在 Java 8 之前,HashMap 采用 数组 + 链表 解决哈希冲突,查询时间复杂度最坏情况下可达 O(n)。Java 8 引入 红黑树(Red-Black Tree) 作为优化方案,使得查询时间复杂度降低 阅读全文

posted @ 2025-02-27 01:01 滚动的蛋 阅读(21) 评论(0) 推荐(0) 编辑

2025年2月25日

【BASE】Integer 缓存

摘要: 在 Java 中,Integer 缓存(Integer Cache)是 Java 为了优化小整数对象的创建和使用而引入的机制。它的核心作用是减少 Integer 对象的创建,提高性能和减少内存消耗。 Integer 缓存机制 范围:默认缓存 -128 到 127 之间的整数。 原理:对于这个范围内的 阅读全文

posted @ 2025-02-25 23:35 滚动的蛋 阅读(5) 评论(0) 推荐(0) 编辑

2025年2月24日

为什么用BIGDECIMAL不用double

摘要: 在Java中,选择使用 BigDecimal 而不是 double 的主要原因在于 精度控制 和 避免浮点数运算误差。以下是详细对比和场景说明: 1. 精度问题 double 的缺陷 二进制浮点数表示:double 是基于 IEEE 754 标准 的二进制浮点数,无法精确表示某些十进制小数(如 0. 阅读全文

posted @ 2025-02-24 00:00 滚动的蛋 阅读(15) 评论(0) 推荐(0) 编辑

2025年2月19日

CPU上下文切换

摘要: 在计算机系统中,I/O密集型任务通常比计算密集型任务触发更多的上下文切换。以下是详细分析: 1. 核心结论 I/O密集型任务:上下文切换频繁(因频繁等待I/O操作,主动让出CPU)。 计算密集型任务:上下文切换较少(持续占用CPU,仅在时间片耗尽或高优先级任务抢占时切换)。 2. 原因分析 (1) 阅读全文

posted @ 2025-02-19 11:41 滚动的蛋 阅读(7) 评论(0) 推荐(0) 编辑

竞态条件(Race Condition)问题

摘要: 竞态条件(Race Condition)是并发编程中常见的问题,当多个线程或进程未正确同步地访问共享资源时,其执行结果依赖于不可控的执行顺序,导致不可预测或错误的行为。以下是对竞态条件的理解及解决方法的系统总结: 竞态条件的理解 定义 竞态条件发生在多个线程/进程同时访问共享资源,且至少有一个操作是 阅读全文

posted @ 2025-02-19 11:08 滚动的蛋 阅读(35) 评论(0) 推荐(0) 编辑

2025年1月21日

带 `$` 符号的 Redis 密码在 Flink 调度脚本中被截断的解决方案 WRONGPASS invalid username-password pair or user is disabled

摘要: 在实际生产使用中,如果你的 Redis 密码中包含 $ 符号,而你又通过调度脚本(如 DolphinScheduler)或 Shell 参数方式传递给 Flink,就可能造成密码被部分截断,进而导致: WRONGPASS invalid username-password pair or user 阅读全文

posted @ 2025-01-21 22:25 滚动的蛋 阅读(22) 评论(0) 推荐(0) 编辑

2024年12月6日

如何加速 Homebrew 在 macOS 上的下载速度

摘要: 在使用 Homebrew 安装软件时,默认情况下会从全球的镜像源下载最新的 JSON API 文件和软件包。这在中国大陆地区常常会遇到速度缓慢的问题,尤其是下载 Homebrew 相关的 formula 或者安装软件包时,速度非常慢甚至无法完成。为了解决这个问题,我们可以通过设置国内的镜像源来加速 阅读全文

posted @ 2024-12-06 18:46 滚动的蛋 阅读(715) 评论(0) 推荐(0) 编辑

1 2 3 4 5 ··· 23 下一页

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示