操作系统如何理解线程是否已完成?

How operating system understands if a thread has finished?

当我们启动一个线程时,操作系统将该线程放入 运行 队列,操作系统的调度程序 运行 该线程在时间(量子)到来时, 那么操作系统如何理解该线程是否已完成其操作?

线程调用了一个 OS 特定的函数。该函数告诉 OS 它已完成。在大多数 languages/frameworks 中,这将在幕后为您完成。

通常有两种终止内核线程的机制。它们与终止进程相同。

  1. 显式调用系统服务以终止线程;或
  2. 对系统服务的隐式调用以在线程的主函数退出时调用以终止。