<
一枝梅的博客
博客
随笔
软件
专题
标签
留言板
开往
博客
共126篇
Java线程池技术一:入门篇
Java线程的创建非常昂贵,需要JVM和OS(操作系统)配合完成大量的工作: (1)必须为线程堆栈分配和初始化大量内存块,其中包含至少1MB的栈内存。 (2)需要进行系统调用,以便在OS(操作系统)中创建和注册本地线程。 Java高并发应用频繁创...
博客
#java
#多线程编程
一枝梅
5月前
236
详解AQS七:深入理解信号量机制Semaphore
所谓的共享锁就是在同一时刻允许多个线程持有的锁,和CountDownLatch不同,Semaphore是一种真正的共享锁:Semaphore可以用来控制在同一时刻访问共享资源的线程数量,通过协调各个线程以保证共享资源的合理使用。Semaphore...
博客
#java
#多线程编程
一枝梅
5月前
207
详解AQS六:深入理解循环栅栏CyclicBarrier
从字面意思直译过来,CyclicBarrier的意思是“循环屏障”,在国内普遍叫它“循环栅栏”,它和CountDownLatch一样,都是JUC下的线程同步工具。 在上一篇文章《详解AQS五:深入理解共享锁CountDownLatch》讲了Cou...
博客
#java
#多线程编程
一枝梅
6月前
319
详解AQS五:深入理解共享锁CountDownLatch
CountDownLatch是一个常用的共享锁,其功能相当于一个多线程环境下的倒数门闩。CountDownLatch可以指定一个计数值,在并发环境下由线程进行减一操作,当计数值变为0之后,被await方法阻塞的线程将会唤醒。通过CountDown...
博客
#java
#多线程编程
一枝梅
6月前
265
详解AQS四:ReentrantLock条件队列原理
ReentrantLock的条件队列是实现“等待通知”机制的关键,之前在《java线程间通信:等待通知机制》一文中讲过了使用ReentrantLock实现多生产者、多消费者的案例,这个案例实际上在java源码的注释中已经给了,可以看Conditi...
博客
#java
#多线程编程
一枝梅
6月前
281
详解AQS三:ReentrantLock非公平锁原理
上一篇文章《详解AQS二:ReentrantLock公平锁原理》中,详细分析了ReentrantLock公平锁的AQS实现原理,本篇文章将会继续分析ReentrantLock非公平锁的实现原理。 首先看看非公平锁NonfairSync的源码,以方...
博客
#java
#多线程编程
一枝梅
6月前
254
详解AQS二:ReentrantLock公平锁原理
ReentrantLock作为我们使用频率最高的显式锁,它是AQS的经典实现,本篇文章将以ReentrantLock公平锁为例讲解AQS的实现。 一、ReentrantLock 在之前的文章《线程同步机制一:内部锁和显式锁》中已经提到过关于显式锁...
博客
#java
#多线程编程
一枝梅
6月前
471
详解AQS一:CLH队列锁
AQS(AbstractQueuedSynchronizer)抽象队列同步器是Java中用于构建同步器(synchronizer)的框架,提供了一种基于FIFO等待队列的抽象框架,JAVA中的很多显式锁底层实现都使用了该框架:ReentrantL...
博客
#java
#多线程编程
一枝梅
7月前
376
java线程间通信:等待通知机制
在多线程编程中,不同线程可能需要相互协作、共享数据,线程间通过某种方式互相告知自己的状态,以避免无效的资源争夺,这就是线程间通信。线程间通信的目的是确保多个线程能够有效地协调工作,以完成特定任务或避免数据不一致性。 线程间通信的方式可以有很多种:...
博客
#java
#多线程编程
一枝梅
7月前
355
hashCode方法的调用对Java锁的影响
从上一篇文章《深入理解偏向锁、轻量级锁、重量级锁》中已经介绍了关于锁升级相关的知识,在其中研究偏向锁的过程中,无意中调用了hashCode方法,然后锁的状态发生了明显不符合预期的变化。 一、偏向锁回顾 首先看下偏向锁的案例,这个之前已经介绍过了,...
博客
#java
#多线程编程
一枝梅
8月前
335
1
2
3
4
...
13
阅读榜单
20292人浏览
主路由、旁路由、单臂路由的区别
TOP1
若依管理系统RuoYi-Vue(二):权限系统设计详解
4年前
14411人浏览
TOP2
若依管理系统RuoYi-Vue(一):项目启动和菜单创建
4年前
13504人浏览
TOP3
若依管理系统RuoYi-Vue(三):代码生成器原理和实战
4年前
11320人浏览
TOP4
Spring Security OAuth2.0认证授权一:框架搭建和认证测试
4年前
9963人浏览
TOP5
完整优雅的卸载腾讯云云服务器安全监控组件云镜
4年前
7102人浏览
TOP6
最新发布
狂盗一枝梅
2025-07-03
17次阅读
留言
Redis(五):Redis Stream
在之前的文章《Redis(二):Redis消息队列》中已经介绍过Redis中使用List以及发布订阅两种模式实现的消息队列,其中发布订阅模式比List模式功能更强大,但是有很大的缺陷: 消息没有持久化,如果消费者断线重连,消息会丢失 没有ack...
博客
评分
回复
狂盗一枝梅
2025-07-01
29次阅读
留言
Redis(四):Redis扩展类型Bitmap、HyperLogLog、GEO
在前面第一篇文章中介绍了redis中的string、hash、list、set、zset五种基本数据类型,除了这五种基本数据类型,还有位图(Bitmap)、基数估算(HyperLogLog)、地理位置(GEO)三种扩展数据类型。 一、位图Bitm...
博客
评分
回复
狂盗一枝梅
2025-06-30
24次阅读
留言
Redis(三):Redis事务
我认为Redis的事务是一个很不完善的功能,甚至和“事务”的概念都不搭边,这里讲解Redis事务只是说它有这个东西,我想大概没有人在生产中用这个东西。 我们知道Mysql事务满足ACID特性,即原子性、一致性、隔离性、持久性,但是Redis事务并...
博客
评分
回复