进程与线程的理解

进程和线程都是对CPU执行时间的形容。进程包括CPU加载程序上下文时间,执行时间,保存上下文时间。但是进程的颗粒度太大,每次都有加载,执行和保存。如果把进程理解为执行一个软件,一个软件的执行不可能是一条逻辑的,它肯定有多个分支和多个程序段,一个进程的执行过程中可能会执行很多分步的操作,这些操作共享了进程的上下文,CPU在执行过程中没有切换上下文,这里的每一个分步操作就是一个线程,一个进程可能会有多个线程。在同一个进程下切换线程,不需要重新加载全部上下文,而切换其他进程下的线程则需要先保存前一个的上下文再去加载下一个进程的上下文。
举例说明:打开QQ相当于打开一个进程,打开语音通话或者进行聊天都属于打开一个线程。总的来说,进程是爸妈,管理众多线程的儿女。
进程是CPU可分配的最小资源管理单元,线程是CPU的最小执行单位。
线程叫做微进程,而协程又叫做微线程。协程拥有自己的寄存器上下文和栈,因此能保留上一次调用的状态。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容