1

最近我在一本书中读到并发是多处理器编程的基本工具。

比它对单核处理器有什么用处?

4

3 回答 3

5

并发是多处理器编程的基本工具。

是的,但它也可以在其他领域有所帮助。例如,如果 CPU 不是瓶颈,并发还可以提高单核系统的吞吐量(例如,因为线程大部分时间都在等待来自磁盘或网络的 I/O)。

于 2013-09-18T07:50:45.270 回答
2

只要有多个任务需要同时运行,并发性就很有帮助。一个非常常见的例子是在 GUI 编程中。您不希望您的 UI 在程序等待从磁盘或网络加载数据时冻结,因此您有一个只管理 UI 元素的线程(在 Swing/AWT 中称为事件调度线程)和后台线程负责通信或长时间运行的计算。操作系统来回交换它们以确保在其他任务仍处于活动状态时重绘 UI。

于 2013-09-18T07:44:06.390 回答
2

能够在运行线程之间切换对于感知单核处理器的性能很有用。在许多系统中,UI 的图形部分由另一个线程更新,而不是由执行工作的线程更新。在长时间的任务运行时没有任何反馈会让用户感到沮丧。单核并发的另一个有用应用是启动一个低优先级的长时间运行的任务,而用户可以同时自由地做其他事情。

于 2013-09-18T07:46:32.607 回答