JUC汇总
总结:
通常说的并发包即java.util.concurrent及其子包,集中了Java并发的各种基础工具类,具体:
- 提供了比Synchronized更高级的各种同步结构:CountDownLatch、CyclicBarrier、Semaphore等,可实现更丰富的多线程操作,例如用Semaphore作为资源控制器,限制同时工作的线程数量。
JUC之各种同步结构(Semaphore、CountDownLatch、CyclicBarrier) - 各种线程安全容器:ConcurrentHashMap、有序的ConcurrentSkipListMap或通过快照机制,实现线程安全的动态数组CopyOnWriteArrayList
JUC之各种线程安全容器 - 各种并发队列,各种BlockedQueue实现,如ArrayBlockingQueue、SynchronousQueue,或针对塔顶场景的PriorityBlockingQueue等
JUC 之各种并发队列Concurrent、CopyOnWrite、Blocking - 强大的Executor框架,可创建不同类型的线程池,绝大部分情况下不需要自己从头实现线程池和任务调度器
JUC之各种线程池
补充知识点: