线程和进程的概念

进程

进程是处于运行过程中的程序,具有独立的功能,是系统进行资源分配和调度的独立单位

独立性

     进程是系统中独立存在的实体,它拥有自己独立的资源,每一个进程都拥有自己私有的地址空间,在没有经过进程本身允许的情况下,一个进程不能直接访问其他进程的地址空间;(音乐播放应用程序不能访问QQ浏览器的内存)

动态性

     进程是一个正在系统中活动的指令集合,包含了时间的概念,具有自己的生命周期和状态

并发性

    在当个处理器上,多个进程可以并发地执行,并且在执行时它们彼此之间不会相互影响

并发和并行的区别

并行

    在同一时刻,有多条指令在多个处理器上同时执行;

并发

  •       多个进程的指令可以被快速地轮换执行,使得宏观 上具有多个进程同时执行的效果。
  •       对于多核计算机,当进程数多于核心数时,也会存在并发的行为!

线程

  • 线程扩展了进程的概念,使得同一个进程可以同时并发处理多个任务
  • 线程是进程的组成部分,一个进程可以拥有多个线程,一个线程必须有一个父进程
  • 线程不拥有系统资源,它与父进程里的其他线程共享父进程所拥有的全部系统资源
  • 系统可以执行多个任务,每个任务就是进程
  • 进程可以同时执行多个任务,每个任务就是线程

线程的优点

  1. 容易共享内存
    •  进程之间不能共享内存,但线程之间共享内存非常容易;因为与分隔的进程相比,线程之间的隔离程度要小,它们共享内存、文件句柄、其他每个进程应有的状态
  2. 运行效率高
    • 系统创建进程时要为其分配系统资源,但创建线程时不需要,所以线程的运行效率更高;
  3. 编程方式简单
    • Java内置了多线程功能的支持,并不是简单地对操作系统地底层进行调度,编程更方便。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
线程和进程是操作系统中的重要概念,用于实现并发执行。 进程是程序的一次执行过程,是操作系统进行资源分配和调度的基本单位。它拥有自己的地址空间、代码、数据和打开的文件等资源。一个进程可以包含多个线程。 线程是进程中的一个实体,是CPU调度和执行的基本单位。一个进程中的多个线程可以共享进程的资源,如内存、文件句柄等,各个线程之间可以直接通信。 区别主要有以下几点: 1. 调度:进程是操作系统进行资源分配和调度的单位,而线程是CPU调度和执行的单位。线程的切换比进程切换更快。 2. 资源拥有:进程拥有独立的地址空间和资源,而线程共享所属进程的资源。 3. 独立性:各个进程之间相互独立,一个进程出错不会影响其他进程。而线程属于同一个进程,共享同一地址空间,一个线程出错可能会影响整个进程。 4. 创建和销毁:创建和销毁一个进程比创建和销毁一个线程开销大。 5. 通信和同步:进程之间通信需要使用特定的机制(如管道、共享内存等),而线程之间可以直接共享进程的资源,通信更方便,同步更容易实现。 总结来说,线程是进程的执行单元,可以共享进程的资源,提高并发性;而进程拥有独立的资源,各个进程之间相互独立。适当地使用线程和进程可以提高系统的效率和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值