说到进程,简单提一下程序:程序是指令和数据的有序集合,其本身是一个静态的概念,没有任何运行的含义。而进程是执行程序的一次执行过程,它是一个动态的概念,是系统资源分配的单位。
在Windows的任务管理器中,就列出了系统当前正在运行的后台进程、系统进程等等。
经常地,一个进程中会包含多个线程;
一个进程也必须包含至少一个线程;
线程是CPU调度和执行的单位。
许多的多线程都是模拟出来的,即在一个CPU的情况下,在同一时间点,CPU只能执行一个代码,由于CPU的计算速度非常快(CPU以纳秒作为单位),因此给人一个程序是同时执行的错觉;真正的多线程是指有多个CPU同时工作(许多服务器就有这样的功能)。
软件执行即产生进程,进程中又包含多个线程在执行。