JUC常用辅助类

简介: CountDownLatch:设定一个数,当调用CountDown()时数量减一,当调用await() 时判断计数器是否为0,不为0就阻塞,直到计数器为0CyclicBarrier:设定一个数,当调用await() 时判断计数器是否达到目标值,未达到就阻塞,直到计数器达到目标值Semaphore:设定一个信号量,当调用acquire()时判断是否还有信号,有就信号量减一线程继续执行,没有就阻塞等待其他线程释放信号量,当调用release()时释放信号量,唤醒阻塞线程

CountDownLatch:设定一个数,当调用CountDown()时数量减一,当调用await() 时判断计数器是否为0,不为0就阻塞,直到计数器为0

CyclicBarrier:设定一个数,当调用await() 时判断计数器是否达到目标值,未达到就阻塞,直到计数器达到目标值

Semaphore:设定一个信号量,当调用acquire()时判断是否还有信号,有就信号量减一线程继续执行,没有就阻塞等待其他线程释放信号量,当调用release()时释放信号量,唤醒阻塞线程

相关文章
|
Java
java类与方法的解释及其创建使用(实例:水池水的进出)
java类与方法的解释及其创建使用(实例:水池水的进出)
144 3
|
7月前
|
Java 调度
Java并发基础-线程简介(状态、常用方法)
Java并发基础-线程简介(状态、常用方法)
43 0
|
5月前
|
缓存 Java
JUC(4)Callable和常用的辅助类
这篇文章介绍了Java并发工具包中的`Callable`接口及其与`Runnable`的区别,以及几个常用的并发辅助类,如`CountDownLatch`、`CyclicBarrier`和`Semaphore`,并提供了它们使用方式的示例代码。
|
6月前
|
设计模式 存储 安全
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
72 1
|
8月前
|
Java
【Java探索之旅】内部类 静态、实例、局部、匿名内部类全面解析
【Java探索之旅】内部类 静态、实例、局部、匿名内部类全面解析
48 0
|
8月前
|
Java
高并发编程之JUC 三大辅助类和读写锁
高并发编程之JUC 三大辅助类和读写锁
59 1
|
存储 安全 Java
JUC并发编程(JUC核心类、TimeUnit类、原子操作类、CASAQS)附带相关面试题
1.JUC并发编程的核心类,2.TimeUnit(时间单元),3.原子操作类,4.CAS 、AQS机制
69 0
|
SQL 设计模式 安全
【java基础】静态内部类又是如何实现线程安全的呢?(利用了类的加载机制)
【java基础】静态内部类又是如何实现线程安全的呢?(利用了类的加载机制)
253 0