多线程学习(一)

来源:互联网 发布:网络课件制作 编辑:程序博客网 时间:2024/06/06 10:57

进程:

一旦程序被装载到了内存并准备执行时候,它是一个进程。

进程具备文本、数据、堆栈片段、以及自己的资源(文件、对象句柄、设备、信号量、互斥量、管道)

进程优先权:系统中使用了优先权方案决定就绪进程使用处理器顺序。进程被分配一个优先类以及该类中的最高级优先级开始

 

上下文切换

进程的时间段用完

一个等待或新建进程准备就绪,而且已经选用处理器

运行进程的分配处理器发生了变化

运行进程发出I/O请求

 

进程关系

创建了进程是对其父进程的复制。子进程具有地址空间的一份拷贝。父进程和子进程的数据和堆栈片段是私有的,但它们共享文本片段。子进程和父进程数据和堆栈片段是私有的,但它们共享文本片段。子进程和父进程可以访问两种进程地址空间之外创建的共享内存区域


进程终止

父进程终止,且所有子进程终止释放

父进程放弃子进程

内部或外部信号导致终止


同步和异步

当父进程挂起执行,直到子进程终止为止,这些进程具有同步执行。父进程挂起,直到子进程终止。一旦子进程终止,退出代码返回到主进程,主进程就恢复并继续执行。父进程可以设置一个标志来指示进程的同步运行。

父进程和子进程也可以异步运行,如果父和子进程相互独立运行,这些线程就是异步执行。


join 就是使得异步变成同步

detach 是变成异步









原创粉丝点击