黑马程序员技术交流社区

标题: 【广州校区】【原创】 线程并发和并行的区别 [打印本页]

作者: 新君    时间: 2019-5-15 19:55
标题: 【广州校区】【原创】 线程并发和并行的区别
1 并发和并行的概述  并发:在同一时间间隔内,同时有多个线程运行。

  并行:在同一时刻,同时有多个线程运行。


2 并发和并行的详解

   并发: 如果一台主机只有一个CPU,那么在某一时刻内最多只能有一个线程在CPU中运行,
               这个时候,如果有多个线程需要运行,则将一个时间间隔分成小的时间段,在每个时间段内执行不同的线程,
               某一时刻内最多只有一个线程在CPU中运行,这种被称为并发。
    并行:而一台主机如果有两个CPU的时候,如果有多个线程需要执行,则分别在两个CPU上分时间段运行,
               同一时刻内可能会有两个线程分别在同一主机的两个CPU中运行,这两个在同一时刻运行中的线程的情况被称为并行。


3 并发和并行的举例
   并发:教室里有一台饮水机,二个人轮流用饮水机接水,每人每次只能接水5秒钟。
   并行:教学里有两台饮水机,二个人各自用饮水机接水,各接各的水,不会干扰。








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2