商务网站构建与维护,东莞网络推广运营公司,amh wordpress,互联网怎样赚钱文章目录什么是线程线程与进程的关系线程与进程的区别什么是线程
上一篇文章中我们介绍了什么进程#xff0c;我们把进程比作一个工厂#xff0c;那么线程就是工厂中的流水线。引入进程的目的就是为了实现多个任务并发执行#xff0c;但是如果频繁的创建销毁进程#xff0…
文章目录什么是线程线程与进程的关系线程与进程的区别什么是线程
上一篇文章中我们介绍了什么进程我们把进程比作一个工厂那么线程就是工厂中的流水线。引入进程的目的就是为了实现多个任务并发执行但是如果频繁的创建销毁进程资源消耗比较高成本比较高所以我们引入了线程线程相比于进程更加轻量级。
什么是多进程什么是多线程呢我们举个例子来向大家说明 现在有很多工作需要找工厂完成工作如果让一家工厂来完成任务效率很低如何提高效率呢 很多人就想到了找两家工厂一起完成效率不就高了嘛这样的思想是使用多进程来完成工作提高了效率但是多找了一个工厂加大了消耗而且两个工厂之间并不能知道对方完成了多少活。 我们还可以在一个工厂中多增加两条生产线此时效率也提高了同时并没有增加工厂两条生产线在同一个工厂还能看见对方完成了多少活这样的思想我们称为多线程。 线程与进程的关系
首先最重要的一点就是进程包含线程一个进程中可以有一个线程或者多个线程每个线程之间都是一个独立的执行流多个线程之间也是并发运行的他们可以在多个CPU上同时运行也可以在一个CPU上通过快速切换进行运行。 进程与线程都是为了可以并发的执行任务只不过使用的场景并不相同 同一个进程内部想要完成多组任务此时使用多线程例如我们打开微信可以聊天可以支付等。更高效节省资源但是一个线程挂了可能带走整个进程 多个进程之间完成多组任务此时就是多进程了例如我们同时打开QQ和微信。多进程的隔离性更高互不影响一个进程挂了并不会带走其他进程 一个进程可能包含多个线程那这些线程所消耗的资源加在一起不会超过两个进程嘛其实一个进程中的这些线程共用一份系统资源只有在进程启动时创建第一个线程的时候需要申请系统资源第一个线程创建完毕之后之后的进程不会在申请资源了。
线程与进程的区别
我们总结一下进程与线程的区别 1、首先要明确的是进程包含线程。 2、进程有自己的独立的内存空间和文件描述符表而同一个进程中的多个线程之间共享一份地址空间和文件描述符表。 3、进程是操作系统资源分配的基本单位而线程是操作系统调度执行的基本单位。 4、进程之间具有独立性一个进程挂了不会带走其他进程而同一个进程中的多个线程之间一个线程挂了可能会把整个程序带走影响到其他线程。