cpu如一个工厂
进程如一个车间,一个车间只能执行一种类型任务,因为电力不足,一次工作只能一个车间工作,其他车间等着,即cpu一次只能执行一个任务,其他任务都等着,也就是cpu一次只能运行一个进程,其他进程处于等候状态。
线程如一个工人,可以做不同的活;一个车间可以有许多工人;许多工人做着不同的活,同时工作,共用同一个车间。即一个进程可以有多个线程,多个线程可以并行工作,共享一块内存空间。
但是不同的工作环境能进入的工人数量不同;如一个厕所只能一个工人进入,其他工人需要等待这个工人结束。这代表线程使用某些内存空间时,其他线程必须等待该线程结束。
一个防止其他人进入的简单方法是在这个房间上加上一把锁。先到的人锁上门,后到的人,看到门已经上锁,等锁打开再进去。这就叫互斥锁,防止多个进程与线程同时读写某一块内存区域