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