并发:并发与同时处理多个任务的应用程序有关。并发是一种通过使用单个处理单元来减少系统响应时间的方法。并发创造了并行的假象,但实际上一个任务的块并没有被并行处理,而是在应用程序内部,一次处理的任务不止一个。在开始执行之前,它并没有完全结束一项任务。
并发是通过中央处理单元(CPU)上进程的交错操作或换句话说通过上下文切换来实现的。这是基本原理,它就像并行处理。它增加了一次完成的工作量。
在上图中,可以看到有多个任务同时进行。该图显示了并发性,因为并发性是一次处理大量事物的技术。
并行性:并行性与将任务划分为看似同时或并行处理的较小子任务的应用程序有关。它用于通过使用多个处理器来提高系统的吞吐量和计算速度。它使单个顺序 CPU 能够同时“看似”地做很多事情。并行性导致一个进程中的中央处理单元和输入输出任务与另一个进程的中央处理单元和输入输出任务重叠。而在并发中,通过将一个进程的输入输出活动与另一个进程的 CPU 进程重叠来提高速度。
在上图中,可以看到任务被划分为较小的子任务,它们同时或并行处理。该图显示了并行性,即同时运行线程的技术。
并发和并行之间的区别:
编号 | 并发 | 并行 |
---|---|---|
1 | 并发是同时运行和管理多个计算的任务。 | 并行性是同时运行多个计算的任务。 |
2 | 并发是通过中央处理单元(CPU)上进程的交错操作或换句话说通过上下文切换来实现的。 | 并行是通过多个中央处理单元(CPU)来实现的。 |
3 | 并发可以通过使用单个处理单元来完成。 | 并行不能通过使用单个处理单元来完成。并行需要多个处理单元。 |
4 | 并发增加了一次完成的工作量。 | 并行提高了系统的吞吐量和计算速度。 |
5 | 并发同时处理很多事情。 | 并行同时做很多事情。 |
6 | 并发是非确定性的控制流方法。 | 并行是确定性控制流方法。 |
7 | 并发调试非常辛苦。 | 在并行调试中也比并发难但简单。 |
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/264505.html