进程和线程

进程:

1、进程是系统进行资源分配和调度的一个独立单位,进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。

单线程和多线程,有以下几种解释帮助理解:

1、单线程是你做完饭再做菜;而多线程是有两个人,你去做一会饭,然后退出来,然别人做会菜,然后你再进去做饭这样轮转。(在百度上看见一个比较好理解的解释);
2、单线程在程序执行时,所走的程序路径按照连续顺序排下来,前面的必须处理好,后面的才会执行。单线程就是进程只有一个线程。
3、多线程就是进程有多个线程,多线程应用程序将程序划分成独立的任务,使程序的响应速度更快,因为用户界面可以在进行其他工作的同时一直处于活动状态。 当前没有进行处理的任务可以将处理器时间让给其他任务。 占用大量处理时间的任务可以定期将处理器时间让给其他任务。 可以随时停止任务。 可以分别设置各个任务的优先级以优化性能。
 
posted @ 2019-08-27 11:24  seeBetter  阅读(111)  评论(0编辑  收藏  举报