程序、进程和线程的区别

程序、进程和线程的区别

程序是磁盘中存储的可执行的二进制(或其他类型)数据文件,是静态的实体;
当它们被执行的时候,会被CPU读取到内存中,此时开始了它们的生命期,即创建了一个进程;
在进程里,我们可以通过代码创建多个线程;

线程是进程中执行运算的最小单位;
进程的内存是相互独立的,而线程是共享内存的;
一个程序对应一个进程,一个进程至少包含一个线程,也即至少一个主线程;

 

在实际中,还有一个应用程序的概念,
应用程序通常由多个程序组成,除了代码文件外,还有一些配置文件,数据文件等,
所以,严格说应该是 应用程序-程序-进程-线程;
但是,从开发或代码执行角度看,不考虑配置这些,应该是 程序-进程-线程;


根据英文翻译,可能更好理解一点,
应用程序为application,程序为program,进程为process,线程为thread;

posted on 2020-05-12 22:32  流年似水zlw  阅读(283)  评论(0)    收藏  举报

导航