自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 线程池核心解析

线程池通过“线程复用”机制,让线程执行完一个任务后,不销毁而是返回池中等待下一个任务,大幅减少线程创建/销毁的次数,减少系统资源损耗。核心线程全忙是,任务进入队列等待,队列满后创建临时线程。核心线程长期处于 “待命” 状态,新任务提交时无需等待线程创建,直接复用空闲核心线程执行,大幅提升任务响应速度。线程池是统一管理线程生命周期的工具组件,其通过预先创建、复用线程,解决了频繁创建销毁线程的资源损耗问题。当任务队列满、线程总数达到最大线程数时,对新提交任务的处理策略,避免任务无意义丢失或系统过载。

2025-12-07 15:40:20 363

原创 浅析阻塞队列

数组的创建需要JVM在运行时明确知道数组的“组件类型”,才能分配对应内存。使用泛型取出数据时无需手动强转,因为take()方法内部已有强转,调用方法时编译器自动处理。匿名内部类简化了“创建Runnable实现类”的步骤,适合“简单任务”,复杂任务可单独写Runnable实现类(复用性高)。父类是Java类的“根类”,能存储任何类型的数据;:必须通过lock.lock()加锁,lock.unlock()解锁,缺一不可。lock.newCondition()创建条件对象,实现对线程的精准控制。

2025-11-18 17:40:59 255

原创 从银行取钱示例看线程安全问题

线程安全的核心矛盾,源于“共享资源”与“并发访问”的冲突。其本质是多线程并发操作同一块内存(如全局变量、共享缓存)时,因操作的“原子性、可见性或有序性”被破坏,导致程序执行结果与预期不一致。简而言之就是多个线程抢用同一份数据,又没有进行“排队”,最终把数据读错或改乱。USER2准备取钱,当前余额:5000USER1准备取钱,当前余额:5000USER2取钱成功,剩余余额:4000USER1取钱成功,剩余余额:3000USER1准备取钱,当前余额:3000。

2025-09-24 22:24:21 261

原创 进程,线程;并行,并发和线程的3种启动方式

操作系统进行资源分配的基本单位,可以理解为一个“正在运行的程序”。比如打开的浏览器、微信,都是独立进程,拥有自己的内存空间、文件资源等。:是进程内的执行单元,一个进程可以包括多个线程,它们共享进程内的资源。比如在微信里接受消息,发送文件,就是多个线程在工作。多个任务同时执行,需要多个CPU核心支持。就像有多个打饭窗口同时打饭。多个任务快速交替执行,看起来像是同时进行,其实不是。就像只有一个打饭窗口,给队伍里的人轮流打饭。

2025-07-25 22:26:16 219

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除