有时,线程发现它们运行时间较长,并通过线程调度过程将其轮流交给另一个线程。
1)我想知道如果一个线程不想停止自己,并且想继续运行,会发生什么。
2)如果另一个线程想要轮流不想停止的线程,会发生什么?
答案1
在大多数现代操作系统中,包括 Linux,任务(进程/线程)调度是抢占式的——由内核控制。任务不能选择不停止,也不能选择轮流执行另一任务。一般来说,任务甚至不会注意到 CPU 调度正在发生的事实。
有时,线程发现它们运行时间较长,并通过线程调度过程将其轮流交给另一个线程。
1)我想知道如果一个线程不想停止自己,并且想继续运行,会发生什么。
2)如果另一个线程想要轮流不想停止的线程,会发生什么?
在大多数现代操作系统中,包括 Linux,任务(进程/线程)调度是抢占式的——由内核控制。任务不能选择不停止,也不能选择轮流执行另一任务。一般来说,任务甚至不会注意到 CPU 调度正在发生的事实。