juc study编程笔记.md
学习狂神说的juc编程的笔记。
JUC是Java中用于多线程和并发编程的核心库,通过学习JUC,我们可以更高效地进行线程管理与同步。在本笔记中,我记录了常用的JUC组件及其用法,包括线程池、并发工具类和锁机制等。
线程池
线程池是一种用于管理线程的机制,它可以通过重复利用现有线程来提高性能。在Java中,常用的线程池包括:
-
FixedThreadPool
:创建固定数量的线程。 -
CachedThreadPool
:根据需要创建新线程,但会重用空闲线程。 -
ScheduledThreadPool
:可以延迟或周期性执行任务。
并发工具类
JUC提供了多种并发工具类来简化线程间的协作:
-
CountDownLatch
:用于让一个线程等待其他线程完成。 -
CyclicBarrier
:使一组线程等待彼此到达一个共同的屏障点。 -
Semaphore
:控制同时访问资源的线程数。
锁机制
锁机制在并发编程中非常重要,JUC提供了ReentrantLock
等灵活的锁。
-
ReentrantLock
:支持公平锁和非公平锁,可以替代sychronized
。 -
ReadWriteLock
:允许多个读线程同时访问,但写线程是互斥的。
下载地址
用户评论