程序、进程和线程的区别
程序、进程和线程的区别
程序是磁盘中存储的可执行的二进制(或其他类型)数据文件,是静态的实体;
当它们被执行的时候,会被CPU读取到内存中,此时开始了它们的生命期,即创建了一个进程;
在进程里,我们可以通过代码创建多个线程;
线程是进程中执行运算的最小单位;
进程的内存是相互独立的,而线程是共享内存的;
一个程序对应一个进程,一个进程至少包含一个线程,也即至少一个主线程;
在实际中,还有一个应用程序的概念,
应用程序通常由多个程序组成,除了代码文件外,还有一些配置文件,数据文件等,
所以,严格说应该是 应用程序-程序-进程-线程;
但是,从开发或代码执行角度看,不考虑配置这些,应该是 程序-进程-线程;
根据英文翻译,可能更好理解一点,
应用程序为application,程序为program,进程为process,线程为thread;
浙公网安备 33010602011771号