写在开头的话 对于一个CPU来说同一时刻只会有一个线程在运行,线程的切换实际上是上下文(context)的切换。何谓“上下文”,指某一时间点CPU寄存器和程序计数器中的内容。具体过程如下: 当线程A要切换到线程B时,要先将A线程挂起同时其线程状态(CPU的状态)保存在内存中。然后CPU从内存中检索出线程B的状态并将其恢复到CPU寄存器中,与此同时程序计数器中也从指向A变更为指向B,接着线程B开始执行直至完毕。线程B执行完毕,程序计数器的指向又恢复到指向A。