并发:
在操作系统中,指一段时间中有多个程序处在已启动到运行完毕之间,且这些程序都在同一个处理器上运行。其实并发不是真正的‘同时进行“,只是cpu把一个时间段划分成几个时间分段,然后在这几个时间分区之间来回切换,由于cpu的处理速度非常快,只要时间间隔处理得当,用户感觉就是多个应用程序在同时进行
特点:同一个时间段内可以做多个事情;但是多个任务之间是互相抢占cpu资源的。
并行:
当系统有一个以上cpu时,当一个cpu执行一个线程时,另一个cpu可以执行另一个进程,两个进程互不抢占cpu资源,可以同时进行,称之为并行;决定并行的因素不是cpu的数量,而是cpu的核数,一个多核cpu也可以并行。适合科学计算,后台处理等弱交互场景。
特点:同一个时间点做了多个事情;任务与任务之间互不抢占资源。
串行:
一个时间点内cpu只执行一个任务
特点:相对于并行的概念,同一个时间点只能执行一个任务,执行完了才能执行下一个任务。