并发:
如图内容,cpu的core只有一个,一个core不管对一个线程还是对多个线程,实质都是串行,
原因很简单,core同一时间点只能处理一个线程,又因为执行的时间片大概是10~15ms,而人最快反应也要0.1s,就是100ms,这才会给你一种一瞬间执行了好多内容的感觉
虽然是串行,但是确实在100ms内执行了多个线程,这种在很短的时间段内能执行多次线程的能力就是并发能力,这也是JavaScript虽然是单线程语言,但也可以实现高并发应用的原因
并行:
我学生时代的笔记本就是这种双核四线程架构的cpu,这种就稍强劲了些,加上16g的内存,一般的技术学习也够了。
言归正传,双核心就表示着同一个时间点(注意不是时间段,而是同一个时间点)有两个核心在执行线程,这就比单核的处理速度快了一倍,在同一个时间点有多个core在执行线程的能力叫做并行能力,
总结:
并行一定在并发,并发不一定是并行