![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 69
Richy Liu
非淡泊无以明志,非宁静无以致远
展开
-
使用Semaphore模拟排队蹲坑
使用Semaphore模拟排队蹲坑什么是Semaphore怎么使用Semaphore使用Semaphore模拟排队蹲坑大概流程:原代码输出结果什么是SemaphoreSemaphore 翻译成字面意思为 信号量,Semaphore 可以控制同时访问的线程个数,通过acquire() 获取一个许可,release() 释放一个许可。如果没有许可就将进行等待状态。流程如下图所示。怎么使用Semaphore1:创建一个Semaphore,在构造函数里指定许可总数量。 Semaphore holes=n原创 2021-09-24 12:46:35 · 290 阅读 · 0 评论 -
深入了解java synchronize
Synchronize 是什么synchronized,中文意思为同步,用于多线程资源共享与维护的最常用手段。它通过线程互斥的手段,保存证了资源的原子性。使用如下:synchronized (o) { // 业务处理 }实现的原理本文要讲的主要是1.6以后的版本。1.6版本以前直接使用重量级锁,没什么好讲的。1.6版本针对synchronize...原创 2020-04-05 20:23:01 · 1176 阅读 · 1 评论 -
CountDownLatch实际应用
CountDownLatch 实例分享描述代码总结描述使用多线程获取数据,并汇集成一个集合返回。代码 @ApiOperation(value = "Mis(时间推移)统计", notes = "Mis(时间推移)统计") @RequestMapping(path = "/mis/MisDateSumaryRpt", method = RequestMethod.GET) ...原创 2020-03-20 00:01:02 · 449 阅读 · 1 评论 -
Java ThreadLocal应用
Java ThreadLocal应用定义简单实例输出结果结果分析定义使用ThreadLocal定义的变量,为每一个线程都提供一个线程独立的副本。简单一点,一个线程一个单例。简单实例import java.util.Random;public class ThreadLocalTestMain { public static void main(String[] args) thr...原创 2020-02-19 23:47:46 · 142 阅读 · 1 评论 -
双检查 单例模式
单例模式的双检查应用场景代码引入解释应用场景多线程创建单例,避免并发重复创建对象。代码引入public class DoubleCheckSingleton { private volatile static DoubleCheckSingleton _obj; // 标识1 private DoubleCheckSingleton(){} public ...原创 2020-02-19 16:59:51 · 323 阅读 · 0 评论 -
煮方便面谈 CountDownLatch
CountDownLatch使用 多线程 控制CountDownLatch用法解释:代码参数:实例:代码实现:CountDownLatch用法解释:CountDownLatch要是控制多线程操作时,等待多线程执行完后,再执行下去。举个例子,冲泡面,需要以下3个步骤A:装水到电锅,打开电源,等3分钟B:拆方便盒,放调味料C:倒开水到方便面盒。其中A跟B是可以同时进行的,C则需要依赖A,...原创 2020-02-16 00:14:07 · 2213 阅读 · 0 评论