JUC是什么?
在 Java 5.0 提供了 java.util.concurrent
(简称JUC)包,在此包中增加了在并发编程中很常用的工具类。
并行和并发
并发(Concurrency):并发指的是多个任务在同一个时间段内交替执行。在并发场景下,多个任务可以同时存在,但实际上每个任务只能以一种交替的方式执行,即任务之间可能会进行快速的切换或分时执行。
例子:
- 限量抢购
- 春运抢票
- 电商秒杀
并行(Parallelism):并行指的是多个任务在同一时刻同时执行。在并行场景下,多个任务可以同时进行,每个任务拥有自己的处理单元(例如CPU核心)
例子:
泡方便面,电水壶烧水,一边撕调料倒入桶中