- 博客(6)
- 收藏
- 关注
原创 MySQL的B+树存储容量的估算(2000W的来源)
B+树的存储容量取决于树的深度和阶数。B+树的阶数(m)由非叶子节点的结构决定,因为非叶子节点只存储键和指针,不存储数据。因此,B+树的阶数m为 1170。
2025-06-13 08:33:04
954
原创 多线程与并发-锁
AQS 是 Java 中显式锁的核心实现框架,它通过一个整型的state变量来表示锁的状态,并使用 FIFO 队列来管理等待锁的线程。独占模式:如。共享模式:如。是 Java 中用于实现线程同步的关键字,确保在同一时刻只有一个线程可以执行被修饰的代码块或方法,从而避免多线程环境下的数据竞争和不一致问题。
2025-05-21 15:51:22
810
原创 多线程与并发-并发基础
原子性指的是一个操作或者一系列操作,在执行过程中不会被任何因素打断,要么全部执行完毕,要么完全不执行,不存在执行到一半的中间状态。一旦操作被中断,就可能会引发数据不一致的问题。x = 10;//语句1:直接将数值10赋值给x,也就是说线程执行这个语句的会直接将数值10写入到工作内存中y = x;//语句2:包含2个操作,它先要去读取x的值,再将x的值写入工作内存,虽然读取x的值以及将x的值写入工作内存 这2个操作都是原子性操作,但是合起来就不是原子性操作了。x++;
2025-05-21 15:50:36
1080
原创 多线程与并发-理论基础
并发是一种编程模型,通过任务切换提高资源利用率,适合处理多任务的场景。并行是一种物理实现,依赖多核硬件同时执行多个任务,适合加速计算。现代系统通常同时使用并发和并行:服务器通过并发处理大量客户端请求(如 Web 服务器)。计算密集型任务通过并行加速(如图像处理、机器学习)。同步是代码按顺序执行的模式,简单直观但可能导致阻塞。异步是非阻塞执行模式,通过回调、Future 等机制提高并发和响应性。现代应用通常结合使用同步和异步:核心业务逻辑使用同步保证正确性和可维护性。
2025-05-21 15:49:35
951
原创 JVM内存知识总结-01
程序计数器是线程私有的,是因为Java多线程是通过线程轮流切换来获得CPU时间片的,如果线程共享程序计数器,那么线程切换时,就会出现线程A执行到了第100行,切换到线程B,线程B也从第100行开始执行,这样就会出现混乱。当线程执行的是 Java 方法时,计数器记录的是正在执行的虚拟机字节码指令的地址;永久代物理是堆的一部分,和新生代,老年代地址是连续的(受垃圾回收器管理),而元空间存在于本地内存(我们常说的堆外内存,不受垃圾回收器管理),这样就不受 JVM 限制了,也比较难发生OOM(都会有溢出异常)。
2025-05-17 17:28:44
1312
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3