0

我认为开始顺序意味着线程的预定顺序(线程 X 将在什么时候运行),但我开始意识到它没有任何意义,因为无法预定本机线程。

本机线程的运行顺序不是由操作系统决定的,因此是随机的吗?如果一切都是“随机的”或者由操作系统的调度服务决定的,我不明白为什么我们要谈论启动顺序。

4

1 回答 1

1

当我们不关心计算机程序中某些语句块的执行顺序时,这就是我们可以考虑使用线程的情况。使用线程但期望它们以特定顺序执行的代码通常会被破坏。如果它确保线程按特定顺序执行,那么它就是在浪费线程的力量。

没有绝对;在某些实时编程中可能存在一些必须按顺序执行某些选择操作的情况,最方便的方法是将这些操作保留在其关联的线程中(出于上下文或其他原因)。

另一个例子是使用优先级。当我们仍然不关心特定的执行顺序时,优先级是我们使用的一种工具,但我们希望在发生调度冲突的情况下,更重要的操作在不太重要的操作之前完成。

于 2013-09-22T02:51:24.117 回答