首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java--进程和线程基本概念

Java--进程和线程基本概念

作者头像
SuperHeroes
发布2018-05-22 16:17:13
5030
发布2018-05-22 16:17:13
举报
文章被收录于专栏:云霄雨霁云霄雨霁

下一篇--线程的创建和启动

进程:

进程是处于运行中的程序,是系统进行资源分配的调度的独立单位。

进程特点:
  • 独立性:进程是系统中独立存在的实体,它可以拥有自己独立的资源,每个进程都有自己私有的地址空间。
  • 动态性:进程和程序的区别就是进程是正在系统中活动的指令集合。
  • 并发性:多个进程可在单个处理器上并发进行,进程之间不会相互影响。

线程:

线程是进程的组成部分,一个进程可以有多个线程,一个线程必须有一个父进程。线程使得同一个进程可一并发处理多个任务。线程可以拥有自己的程序计数器、自己的堆栈和自己的局部变量,但不拥有系统资源,它与进程中的其他线程共享进程所拥有的所有资源。线程是处理器调度的基本单位。

线程特点:
  • 线程可与其他线程共享进程中的共享变量和部分环境,相互之间协作来完成进程的任务。
  • 线程是独立运行的,它并不知道系统中还有其他线程存在。
  • 线程的执行是抢占式的。
  • 线程的调度和管理由进程本身负责,操作系统不参与。

总结:操作系统可以同时执行多个任务,每个任务就是进程;进程可以同时执行多个任务,每个任务就是线程。

线程相对于进程的优势:

  • 进程之间不能共享内存,但线程之间共享内存非常容易。
  • 系统创建一个进程必须分配独立的内存空间和相关资源,但创建线程代价要小得多,因此多线程实现多任务效率更高。
  • Java语言内置了多线程功能支持,简化了Java的多线程编程。

并发和并行的区别:并行是指在同一时刻,有多条指令在多个处理器上运行;并发是在同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。

下一篇--线程的创建和启动

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 下一篇--线程的创建和启动
  • 进程:
    • 进程特点:
    • 线程:
      • 线程特点:
      • 线程相对于进程的优势:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档