进程、线程、协程
进程是系统资源分配的最小单位,线程是执行的最小单位,协程是我们手动实现多函数同步的方法
进程切换:
页目录、内存空间
CPU执行上下文(寄存器)
中断
线程切换:
栈、寄存器
中断
协程切换:
寄存器
伪代码 消费者、生产者模式
bmp_buf;//存储上下文
num;//执行次数
consume(){
}
priduce(){
}
//set_dmp是保存栈
int main(){
while(num){//保存上下文
if(set_dmp(buf)){
produce();
}else{
consume();
longdmp(buf,1);//恢复上下文,将1作为set_dmp的返回值
}
num--;
}
}