首页 > 其他分享 >060_JUC常用辅助类

060_JUC常用辅助类

时间:2022-11-15 21:11:44浏览次数:54  
标签:060 辅助 JUC 计数器 线程 Semaphore 演示 等待 数量

目录

CountDownLatch 倒计时计数器,减法计数器

image.png
image.png
image.png

演示代码

:::info
等待一个或多个线程执行完成
CountDownLatch countDownLatch = new CountDownLatch(7); 等待7个线程执行完成,数量为7
countDownLatch.countDown(); 数量减一
countDownLatch.await(); 等待计数器归零,然后再向下执行,计数器没归零时,一直等待
:::
image.png
image.png

CyclicBarrier 加法计数器

image.png
image.png
image.png
image.png

演示代码

:::info
cyclicBarrier.await()等待的次数,达到计数器数量时,计数器对应的线程才执行
CyclicBarrier cyclicBarrier = new CyclicBarrier(int, Runnable);
int 计数器数量,如:数量到7时,线程可以执行,不到之前,线程一直等待
Runnable 要执行的线程
cyclicBarrier.await(); 等待
:::
image.png
image.png

Semaphore 计数信号量

image.png
image.png

演示代码

image.png
:::info
规定允许的最大线程数量,调用获得方法,线程数量减一,数量减为零时,等待,调用释放方法,线程数量加一
Semaphore semaphore = new Semaphore(3); 允许的最大线程数量
semaphore.acquire(); 获得,允许的线程数量减一,数量减为零时,等待
semaphore.release(); 释放,允许的线程数量加一
:::
image.png
image.png

标签:060,辅助,JUC,计数器,线程,Semaphore,演示,等待,数量
From: https://www.cnblogs.com/wl3pb/p/16893934.html

相关文章

  • linux_命令行助手:(manpages supplement)/获取linux命令用法示例的若干辅助命令行工具
    文章目录​​linux_命令行助手:(manpagessupplement)/获取linux命令用法示例的若干辅助命令行工具(cheat/tldr)​​​​references​​​​我的推荐​​​​ltdr(pythonpi......
  • NVIDIA GeForce GTX 1060 6GB 的 1001Mhz 记录
    情况最近购置10606G显卡通过GPU-Z查询结果如下:NVIDIAGeForceGTX10606GB显存频率为8008MHz疑问小伙伴会问:为什么我的只有1001MHz?是不是买到了假卡会问GTX......
  • JUC学习笔记——共享模型之无锁
    JUC学习笔记——共享模型之无锁在本系列内容中我们会对JUC做一个系统的学习,本片将会介绍JUC的无锁我们会分为以下几部分进行介绍:无锁操作CAS与Volatile原子类型原理......
  • JUC学习笔记——共享模型之内存
    JUC学习笔记——共享模型之内存在本系列内容中我们会对JUC做一个系统的学习,本片将会介绍JUC的内存部分我们会分为以下几部分进行介绍:Java内存模型可见性模式之两阶段......
  • JUC并发编程
    学习文档:https://blog.csdn.net/weixin_44491927/article/details/108560692学习视频:https://www.bilibili.com/video/BV1B7411L7tE/ ......
  • JUC学习笔记——共享模型之管程
    JUC学习笔记——共享模型之管程在本系列内容中我们会对JUC做一个系统的学习,本片将会介绍JUC的管程部分我们会分为以下几部分进行介绍:共享问题共享问题解决方案线程安......
  • MapReduce实战之辅助排序和二次排序案例
    辅助排序和二次排序案例1)需求有如下订单数据订单id商品id成交金额0000001Pdt_01222.80000001Pdt_0625.80000002Pdt_03522.80000002Pdt_04122.40000002Pdt_05722.40000003Pdt......
  • 白嫖永久服务器1668060025667
    阿贝云服务器注册免费领取1核1g内存5m宽带10g内存的云服务器,对于个人来说完全够用了。还有免费备案和虚拟主机,免备案对于搭建个人博客就很方便,部署了小项目上去,运行流畅不......
  • 白嫖永久服务器1668060067460
    阿贝云服务器注册免费领取1核1g内存5m宽带10g内存的云服务器,对于个人来说完全够用了。还有免费备案和虚拟主机,免备案对于搭建个人博客就很方便,部署了小项目上去,运行流畅不......
  • ORA-00600 内部错误代码:
    发现对某个表进行操作时突然报改错(后面在其他生产环境也发现过其他表出现同样的报错),网上说是oracle11g本身的问题,不想动生产环境解决办法:导出数据,重新建表导入数据错误消......