一、Concurrency 并发
应用程序中(Application)同时进行一个以上的任务(Task)。对于单CPU的电脑而言,不可能同时进行一个以上的任务,CPU通过交换的执行任务直到任务都被执行完成。
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/80dcb4808d7889c4f5e0f25f00373b08.png#pic_center)
二、Parallelism 并行
应用程序中的任务(Task)被切割成多个子任务(SubTask)同时执行。实现并行你的应用程序必须有多个线程在同时执行,并且至少有一个任务在执行(Task)。
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f853f102f29d947c6069b36e4300c41a.png#pic_center)
三、Concurrency vs. Parallelism
- 并发是一个应用程序同时执行多个任务。
- 并行是一个应用程序处理单个任务,将单个任务切割成多个子任务并行执行。