并发与并行

并发

当多个线程在同时进行时,而系统只有一个cpu(小于线程数),此时系统不能真正的同时进行所有线程运行(只可以运行一个线程),系统会将cpu运行时间划分成若干个时间段,再将每个时间段交给线程去执行,在一个线程运行时,其他等待cpu资源的线程都被挂起。这便是并发。

并行

目前即使是个人电脑的cpu也是多核,在多核电脑中,每一个cpu都可以独立运行一个线程,这种可以同时执行多个线程的方式便是并行

区别

  1. 并行是在同一时刻多个线程同时运行,而并发是cpu的时分片段,每一时刻只运行一个线程,cpu会在多个线程间快速切换,但是切换过程是有性能开销的
  2. 只有多核的服务器才能实现正真意义的并行,否则都是并发。而且并行和并发是同时存在的。
阅读更多
版权声明:知识是公共的,有建议大家一起讨论 https://blog.csdn.net/wanghao_0206/article/details/80345628
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭