首页 > 系统相关 >进程与线程的区别

进程与线程的区别

时间:2022-10-18 18:45:52浏览次数:37  
标签:区别 独立 并发 线程 进程 执行 资源

进程:是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念,竞争计算机系统资源的基本单位。

线程:是进程的一个执行单元,是进程内科调度实体。比进程更小的独立运行的基本单位。线程也被称为轻量级进程。

进程与线程的区别:

地址空间:线程共享本进程的地址空间,而进程之间是独立的地址空间。

资源:线程共享本进程的资源如内存、I/O、cpu等,不利于资源的管理和保护,而进程之间的资源是独立的,能很好的进行资源管理和保护。

健壮性:多进程要比多线程健壮,一个进程崩溃后,在保护模式下不会对其他进程产生影响,但是一个线程崩溃整个进程都死掉。

执行过程:每个独立的进程有一个程序运行的入口、顺序执行序列和程序入口,执行开销大。但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制,执行开销小。

可并发性:两者均可并发执行。

切换时:进程切换时,消耗的资源大,效率高。所以涉及到频繁的切换时,使用线程要好于进程。同样如果要求同时进行并且又要共享某些变量的并发操作,只能用线程不能用进程。

其他:线程是处理器调度的基本单位,但是进程不是。

标签:区别,独立,并发,线程,进程,执行,资源
From: https://www.cnblogs.com/wzh2002/p/16803643.html

相关文章

  • 产品和项目的区别
    一、产品与项目的区别1、定位不同产品是需求方,决定做什么。项目是执行方,解决的是如何做的问题。2、使用者不同产品由产品经理使用和管理,记录需求,规划产品的开发计划。项目......
  • 队列queue的poll()和remove()的区别
    队列是一个典型的先进先出(FIFO)的容器。即从容器的一端放入事物,从另一端取出,并且事物放入容器的顺序与取出的顺序是相同的。在Queue中poll()和remove()有什么区别相......
  • 常用的多线程类
    常用的多线程类创建池ExecutorServiceexecutor=Executors.newFixedThreadPool(4);Executors工程类,可以提交任务。executor.submit(Callabletask)记得关闭池shut......
  • vue-router中query和params的区别
    一.query和params的知识点理解/data/:id这个路由匹配/data/1,/data/2这里的id叫params/data?id=1/data?id=2这里的id叫queryparams方法传参时,要在路由后面加......
  • Java8Stream的flatmap应用(区别map)-优化嵌套for循环条件筛选
    场景Java8新特性-Stream对集合进行操作的常用API:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/126070657前面讲Stream的常用api中讲到map的使用......
  • AOP之环绕通知 proceedingjoinpoint和前置后置通知 joinpoint区别
    AOP之proceedingjoinpoint和joinpoint区别AOP之proceedingjoinpoint和joinpoint区别现在AOP的场景越来越多,所以我们有必要理解下和AOP相关的一些概念和机制。基础知识......
  • 测试-SIT测试和UAT测试的区别在哪里?
    在企业级软件的测试过程中,经常会划分为三个阶段——单元测试,SIT和UAT,如果开发人员足够,通常还会在SIT之前引入代码审查机制(CodeReview)来保证软件符合客户需求且流程正确......
  • 【Java】多线程详解!
    多线程程序程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。进程进程(process)是程序的一次执行过程,或是正在运行的一个......
  • Python中的多线程
    线程和进程线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线进程之间相互独立,但同一线程......
  • Java 多线程(九)死锁及Lock
    死锁多个线程各自站有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形,某一个同步块同时拥有“两个......