Q:如何判断一段程序是由C编译程序编译还是由C++编译程序编译?
A:C++编译时定义了_cplusplus,C编译时定义了_STDC_;
每个线程都有一个上下文(CONTEXT),保存在线程的内核对象中。这个上下文反映了线程上一次执行时CPU寄存器的状态。
大约每隔20ms(GetSystemTimeAdjustment函数第二个参数的返回值),Windows都会查看所有当前存在的线程内核对象。在这些对象中,只有一些被认为是可调度的。Windows在可调度的线程内核对象中选择一个,并将上次保存在线程上下文中的值载入CPU寄存器。
这一操作被称为上下文切换(context switch)。
----- 摘自《Windows核心编程第七章》