一文带你理解 并发、并行、串行 的区别

发布时间:2022-04-01 12:09:39 作者:yexindonglai@163.com 阅读(1077)

并发

并发有2种含义 :

1. 多个人同时做一件事

生活中这种多个人做一件事的例子很常见,比如盖房子,肯定有多个人同时协作一起完成的,他们的共同目标都是相同的,就是把房子盖好;在软件中可以理解为多线程同时操作一个共享变量,这就是一种并发的操作

2. 一个人同时做多件事

一个人同时做多件事,小明可以一边打电话一边拖地,这也是一种并发的操作,在软件中常见的就是多线程操作,往往一个进程中都是由多个线程组成的,就可以理解为一个进程同时做了很多件事;

并行

并行可以理解为多个人同时进行,并且这些人自己做自己的事,各不相关,就像在一家公司里面,虽然在一起工作,但是每位员工都有自己的事情要做,他们各司其职,为公司做贡献

串行

事情一件件地做,每件事都需要做完才能去做下一件事,这就叫串行,比如小明先拖地,然后在打电话,接着在去做其他事情;每件事情都井然有序地排着,等着小明去完成;在软件中,加锁就是一种串行化的实现方式,通过加锁保证了线程的数据安全;

总结

为了方便大家更好的理解,一次性将 并发、并行、串行 都用图表示出来,以更直观地展示他们之间的区别

关键字后端