进程
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。
Windows
创建一个新的进程需要用到这个函数CreateProcess,下面是代码范例:
创建一个线程的例子
Linux
fork是linux下创建进程,这里通过pipe来进行进程间的通讯(利用共享内存)
线程
Windows
进程是资源分配的最小单位,而线程呢,则是CPU运行的最小单位。
Linux
线程标识
线程有ID, 但不是系统唯一, 而是进程环境中唯一有效.
线程的句柄是pthread_t类型, 该类型不能作为整数处理, 而是一个结构.
线程退出的条件
下面任意一个都可以。
1.调用pthread_exit函数退出。
2.其他线程调用pthread_cancel取消该线程,且该线程可被取消。
3.创建线程的进程退出或者整个函数结束。
4.当前线程代码执行完毕。
5.其中的一个线程执行exec类函数执行新的代码,替换当前进程所有地址空间。
例子
|
|
区别
|
|