
JUC并发
以实战为基础,记录学习过程
愿你满腹经纶
任何执拗都会成为过往,只有时间会告诉你对错
展开
-
【JUC并发】常见面试题:wait、sleep、park之间的区别,synchronized、ReentrantLock之间的区别,悲观锁与乐观锁
wait 与 sleep- 不同 - sleep 是 `Thread` 方法,而 wait 是 `Object` 的方法 - sleep `不需要`强制和 synchronized 配合使用,但 wait `需要` 和 synchronized 一起用 - sleep 在睡眠的同时,`不会释放`对象锁的,但 wait 在等待的时候`会释放`对象锁- 相同 - 如果wait(n,nanos),它们状态都是......原创 2022-08-07 12:07:09 · 606 阅读 · 0 评论 -
【JUC并发】单词计数实验:ConcurrentHashMap,computeIfAbsent,merge,LongAdder
实验介绍- 将26个英文字母分别循环200次,每个字母作为一个单词,一共有5200个单词。- 每个单词中间用"\n"分隔,乱序存入26个文件中- 生成26个线程对26个文件中的单词进行计数,存入map中原创 2022-08-06 20:37:00 · 552 阅读 · 0 评论 -
【JUC并发】CountDownLatch:等待倒计时。有趣的实验
CountDownLatch:等待倒计时。有趣的实验原创 2022-08-05 18:13:29 · 189 阅读 · 0 评论 -
【JUC并发】黑马程序员:自定义连接池(享元模式+AtomicIntegerArray+Semaphore)
Semaphore:信号量,用来限制能同时访问共享资源的线程数。AtomicIntegerArray:原子数组原创 2022-08-05 17:04:35 · 165 阅读 · 0 评论 -
【JUC并发】黑马程序员:应用之缓存(ReentrantReadWriteLock,读写锁实现数据库缓存)
ReentrantReadWriteLock:读写锁实现数据库缓存,适合读多写少原创 2022-08-05 15:49:02 · 200 阅读 · 0 评论 -
【JUC并发】黑马程序员:自定义同步器、锁(AbstractQueuedSynchronizer、Lock(不可重入))
AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架。子类主要实现这样一些方法(默认抛出 UnsupportedOperationException)原创 2022-08-04 19:07:18 · 263 阅读 · 0 评论 -
【JUC并发】黑马程序员:ForkJoinPool。fork()/ join() 计算1到100之间的数
ForkJoinPool:fork()/ join() 计算1到100之间的数原创 2022-08-04 17:38:05 · 158 阅读 · 0 评论 -
【JUC并发】黑马程序员:newFixedThreadPool(固定大小线程池的饥饿现象与解决办法)
newFixedThreadPool 处理饥饿正确姿势原创 2022-08-04 15:45:19 · 497 阅读 · 0 评论 -
【JUC并发】自定义线程池:拒绝策略版(生产者添加任务到阻塞队列失败)。ReentrantLock,Condition(awaitNanos),synchronized,timeUnit,函数式接口
该版本组合了本人博客中的:自定义线程池——普通版(生产者添加任务到阻塞队列失败时死等)、自定义线程池——超时版(工作线程获取任务超时)原创 2022-08-03 19:52:33 · 311 阅读 · 0 评论 -
【JUC并发】自定义线程池:超时版(工作线程获取任务超时)。ReentrantLock,Condition(awaitNanos),synchronized,timeUnit
自定义线程池——超时版(工作线程获取任务超时):ReentrantLock,Condition,synchronized原创 2022-08-03 18:36:42 · 349 阅读 · 0 评论 -
【JUC并发】自定义线程池:普通版(ReentrantLock,Condition,synchronized)
自定义线程池——普通版:ReentrantLock,Condition,synchronized原创 2022-08-03 17:49:21 · 196 阅读 · 0 评论 -
【JUC并发】黑马程序员:自定义连接池,享元模式+AtomicIntegerArray+synchronized+wait()+notify()
黑马JUC——自定义连接池:享元模式+AtomicIntegerArray原创 2022-08-01 19:57:17 · 325 阅读 · 0 评论 -
【JUC并发】黑马程序员:Unsafe+volatile 自定义原子整数(compareAndSwapInt)
Unsafe 对象提供了非常底层的,操作内存、线程的方法:CAS、LockSupport中的park、unpark。unsafe实例无法通过getUnsafe()获取,只能通过反射获得。直接调用这个方法会抛出一个SecurityException异常,这是因为Unsafe仅供java内部类使用,外部类不应该使用它。......原创 2022-08-01 16:50:38 · 205 阅读 · 0 评论 -
【JUC并发】黑马程序员:CAS锁自定义(AtomicInteger+volatile)
CAS锁自定义:AtomicInteger+volatile。仅用于测试学习,未实现可重入原创 2022-08-01 10:55:51 · 185 阅读 · 0 评论 -
【JUC并发】单例模式正确姿势汇总:普通饿汉式,枚举饿汉式,普通懒汉式,DCL懒汉式,静态内部类懒汉式
解析每种实现的线程安全,以及单例模式相关面试题的解答。给出破坏单例模式的方法及解决办法原创 2022-07-31 17:38:33 · 117 阅读 · 0 评论 -
【JUC并发】黑马程序员:终止模式之线程优雅打断,interrupt版、打断标记+volatile版
黑马JUC实操改进——终止模式之线程优雅打断:interrupt版 / 打断标记+volatile版原创 2022-07-31 00:23:09 · 190 阅读 · 0 评论 -
【JUC并发】黑马程序员:线程的六种状态及状态转换
Java线程的六种状态及状态转换:NEW RUNNABLE BLOCK WATING TIMED_WAITING TERMINATED原创 2022-07-30 22:23:43 · 281 阅读 · 0 评论 -
【JUC并发】黑马程序员:同步模式之顺序控制 ,wait、await、park三种实现
> 线程 1 输出 a 5 次,线程 2 输出 b 5 次,线程 3 输出 c 5 次。现在要求输出 abcabcabcabcabc原创 2022-07-30 21:57:49 · 254 阅读 · 0 评论 -
【JUC并发】黑马程序员:wait/notify正确姿势
Java JUC 编程学习笔记--wait/notify/notifyAll原创 2022-07-30 15:14:55 · 294 阅读 · 0 评论