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

进程与线程的区别

时间:2022-10-21 21:00:23浏览次数:42  
标签:销毁 区别 主线 线程 施加 进程 执行

1、首先是定义

进程:是执行中一段程序,即一旦程序被载入到内存中并准备执行,它就是一个进程。进程是表示资源分配的的基本概念,又是调度运行的基本单位,是系统中的并发执行的单位。

线程:单个进程中执行中每个任务就是一个线程。线程是进程中执行运算的最小单位。

2、一个线程只能属于一个进程,但是一个进程可以拥有多个线程。多线程处理就是允许一个进程中在同一时刻执行多个任务。

3、线程是一种轻量级的进程,与进程相比,线程给操作系统带来侧创建、维护、和管理的负担要轻,意味着线程的代价或开销比较小。

4、线程没有地址空间,线程包含在进程的地址空间中。线程上下文只包含一个堆栈、一个寄存器、一个优先权,线程文本包含在他的进程 的文本片段中,进程拥有的所有资源都属于线程。所有的线程共享进程的内存和资源。 同一进程中的多个线程共享代码段(代码和常量),数据段(全局变量和静态变量),扩展段(堆存储)。但是每个线程拥有自己的栈段, 寄存器的内容,栈段又叫运行时段,用来存放所有局部变量和临时变量。

5、父和子进程使用进程间通信机制,同一进程的线程通过读取和写入数据到进程变量来通信。

6、进程内的任何线程都被看做是同位体,且处于相同的级别。不管是哪个线程创建了哪一个线程,进程内的任何线程都可以销毁、挂起、恢复和更改其它线程的优先权。线程也要对进程施加控制,进程中任何线程都可以通过销毁主线程来销毁进程,销毁主线程将导致该进程的销毁,对主线程的修改可能影响所有的线程。

7、子进程不对任何其他子进程施加控制,进程的线程可以对同一进程的其它线程施加控制。子进程不能对父进程施加控制,进程中所有线程都可以对主线程施加控制。

标签:销毁,区别,主线,线程,施加,进程,执行
From: https://www.cnblogs.com/ahui0928/p/16814756.html

相关文章

  • 多线程基础知识
    【单核处理器和多核处理器的多线程】单核处理器:为每个线程分配时间片。来模拟并发多核处理器:一核一线程,真正实现并发 【标志】线程一致性,IsAlive就为true,否则为fals......
  • 多线程技术总结
    csdn上笔记也多,但是用的不多,不用就忘了。博客线程笔记——技术笔记:.Net全套就业班视频教程在多线程中的跨线程的方法调用就得用委托。一个进程的多个线程间可相互......
  • Linux 进程与线程、线程与信号
    进程与线程多线程程序调用fork后,子进程只是调用fork线程的完整复制。子进程自动继承父进程种互斥锁的状态。这引起一个问题:子进程不知道从父进程继承来的互斥锁的具体状态......
  • JAVA---Collection和Map区别
    1.Collection<T> ==元素都是单值== 元素是否有序元素是否可重复List<T>有序(所有的元素都有索引位置)可以Set<T>无序(没有索引位置)不可以1.1.L......
  • PHP中self::和static::的区别
    self关键字在编译时而非运行时确定其作用域static关键字在运行时而非编译时确定其作用域个人理解:编译时就是你看到的文件代码的位置,不关心子类是否继承运行时就是程序......
  • 进程和线程的区别
    一:什么是线程:线程是操作系统能够进行运算调度的最小单元。它被包含在进程中,是进程中实际运行的单位。一个进程中可以并发多个线程,每个线程执行不同的任务。二;什么是进......
  • SEO和SEM的区别是什么,哪个效果更好一些
    SEO指的是搜索引擎优化,SEM指的是搜索引擎影响,那么SEO和SEM的区别具体是什么?对于初创业的企业来说,哪个更好呢?下面,本文将介绍SEO和SEM的区别,帮助企业和公司网络人员理清这两者......
  • get和post的区别
    1、get和post都是http的请求方法,本质上都是tcp连接,并无区别;但是由于http的规定及浏览器和服务器的限制,导致他们在应用过程中会有所不同不同1、get是用于获取信息(查询),是安......
  • java 线程详解
    线程目录HelloWorld在Java中有两种方式创建线程,第一种方式是实现​​Runnable​​​接口,第二种方式是继承​​Thread​​类,下面是使用示例:publicclassRunnableDe......
  • 进程与线程的区别
    一.进程与线程1.进程一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程,比如在Windows系统中,一个运行的xx.exe就是一......