zoukankan      html  css  js  c++  java
  • 线程与进程的区别

    1. 定义:

    进程:  执行中一段程序,  一旦程序被载入到内存中并准备执行 他就是一个进程

                 进程是资源分配的基本概念 调度运行的基本单位  系统中的并发执行的单位

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

    进程里可以有多个线程

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

    2. 线程没有地址空间  线程包含在进程的地址空间中 线程上下文只包含一个堆栈、一个寄存器、一个优先权,

    3. 线程文本包含在他的进程的文本片段中, 进程拥有的所有资源都属于线程 

    4. 所有线程共享进程的资源与内存  (常量, 全局变量与静态变量,扩展段(堆存储))

    5. 每个线程有自己的栈段  寄存器的内容  栈段又叫运行时段 存所有局部变量与临时变量

    6. 父与子进程使用进程间通信机制 同一进程的线程通过读取写入数据到进程变量通信

    7. 线程的级别是相同的 进程内的任何线程都可以销毁、挂起、恢复和更改其它线程的优先权,进程中任何线程都可以销毁进程,销毁主线程将导致该进程的销毁,对主线程的修改可能影响所有的线程。

    8. 子进程不能控制其它进程

    进程和线程都有ID/寄存器组、状态和优先权、信息块,创建后都可更改自己的属性,都可与父进程共享资源、都不能直接访问其他无关进程或线程的资源。

  • 相关阅读:
    500 多个 Linux 命令文档搜索
    C++ 字符串基本操作
    串的模式匹配算法
    查看、启动、关闭防火墙
    天润融通面试
    LeetCode 169. 求众数
    【面试题】人人车一次面试总结
    一个完整的 JS 身份证校验代码
    oracle多表查询
    百度地图的Icon
  • 原文地址:https://www.cnblogs.com/moneyss/p/10691471.html
Copyright © 2011-2022 走看看