一、进程与线程的对比
- 进程的两个特性:分配资源(内存,分配设备,文件等),被调度执行(CPU时间片)。
- 进程:分配资源和抢占CPU的单位,不频繁地进行切换。进程的资源及地址空间供其所有线程共享。
- 线程:被调度运行的单位,不拥有资源,可频繁调度切换,轻装运行。也称为轻量级进程LWP。(线程是一个进程内部的基本调度单位。一个进程可派生多个线程,线程间并发运行。)
1.1 线程≠子进程
- 多个线程共享空间(内存,文件等),通信快。
- 子进程空间各自独立,通行时需借助于IPC机制(进程间通信,如消息,管道,信号,共享内存区等),通信慢。
二、线程
2.1 线程的功能——线程的三种状态
- 线程基本状态:运行态,就绪态,阻塞态。
- 挂起/终止一个进程会导致其所有线程被同时挂起/终止。
- 与进程类似,多个线程并发执行可以提高系统效率,但需要线程间的同步互斥。</