自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 这就是读写锁(ReentrantReadWriteLock)吗?

摘要:读写锁是一种"读写分离"的锁机制,特别适用于"读多写少"场景。它允许多个读操作并行执行,而写操作独占执行,有效提升并发性能。Java中的ReentrantReadWriteLock实现了读写锁,具有可重入、公平/非公平模式、锁降级等特性。与普通独占锁相比,读写锁在读操作频繁的场景下能显著提高系统吞吐量,但需要注意读写互斥、锁升级限制等问题。该锁通过分离读锁和写锁,在保证线程安全的同时优化了并发访问效率。

2025-12-09 16:49:46 938

原创 原来自旋锁还能这么理解

摘要:自旋锁通过线程原地循环等待来避免上下文切换开销,适合锁持有时间短的场景,但会占用CPU资源。适应性自旋锁更智能,根据历史等待时间和竞争情况动态调整自旋次数,平衡CPU开销和切换成本。Java中通常使用synchronized或ReentrantLock而非手动实现自旋锁。

2025-12-08 18:55:41 558

原创 小白也能懂的AQS工作原理

AQS(AbstractQueuedSynchronizer)是Java并发编程中的核心同步框架,其工作原理可类比食堂排队打饭场景。AQS通过同步状态(state)控制资源访问,采用双向阻塞队列管理等待线程,每个线程被封装为Node节点。Node节点通过waitStatus标记5种状态(初始/SIGNAL/CANCELLED/CONDITION/PROPAGATE),实现高效线程调度。AQS的高效性体现在:非盲目等待(仅SIGNAL状态才阻塞)、自动清理无效节点、入队前自旋尝试、虚拟头节点设计等优化措施。该

2025-12-08 14:33:59 658

原创 2025计算机能力挑战赛初赛Java(编程第二题)

摘要:本文介绍了一个使用并查集算法解决城市连通性问题的方案。题目要求处理n个城市间的q次操作,包括建立连接和查询连通性。通过并查集实现高效的合并与查找操作,利用路径压缩优化性能。对于查询操作,若两城市连通则输出"Yesxy",否则输出"No"。代码示例展示了Java实现,包括初始化、查找(带路径压缩)和合并操作。

2025-11-23 16:27:19 12

原创 安装并勾选hype-v环境后,解决Docker Desktop启动一直转圈的一种方法(亲测有效)

摘要:针对Docker Desktop启动时持续转圈的问题,本文提供解决方案。当因使用VMware等虚拟化软件而禁用Hyper-V启动项后,可通过管理员命令提示符执行bcdedit /set hypervisorlaunchtype auto恢复设置,并重启电脑。验证方法为运行bcdedit查看配置值是否为auto。注意本方法仅适用于Hyper-V启动项被禁用导致的启动异常。

2025-11-13 16:11:06 462

原创 SpringBoot调用本地部署Ollama中模型,怎样实现Ollama 服务的流式响应格式

本文介绍了使用Spring WebClient实现与Ollama模型交互的流式响应方案。主要内容包括:1)环境准备和pom.xml依赖配置(WebFlux、Jackson等);2)定义请求/响应数据模型;3)配置RestTemplate和WebClient;4)实现服务层逻辑,支持普通响应和流式响应两种模式;5)控制器层接口设计,其中流式接口使用Flux返回类型并设置MediaType为TEXT_EVENT_STREAM。该方案充分利用WebClient的响应式特性,实现了与Ollama模型的高效流式交互,

2025-10-17 10:30:30 327

空空如也

空空如也

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

TA关注的人

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