• 牛客网Java刷题知识点之进程和线程的区别


      不多说,直接上干货!

    https://www.nowcoder.com/ta/review-java/review?tpId=31&tqId=21079&query=&asc=true&order=&page=11

    线程与进程的区别归纳:

      a.地址空间和其它资源:进程间相互独立,同一进程的各线程间共享。某进程内的线程在其它进程不可见。

      b.通信:进程间通信IPC,线程间可以直接读写进程数据段(如全局变量)来进行通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。

      c.调度和切换:线程上下文切换比进程上下文切换要快得多。

      d.在多线程OS中,进程不是一个可执行的实体。

      进程是运行中的程序,线程是进程的内部的一个执行序列。
      进程是资源分配的单元,线程是执行行单元。
      进程间切换代价大,线程间切换代价小。
      进程拥有资源多,线程拥有资源少。
      多个线程共享进程的资源。
     
     
      进程是资源分配单位,线程是cpu调度单位;跟cpu真正打交道的是线程;
      进程是运行时的程序,而线程是进程的执行序列;
      进程的上下文切换比线程慢得多;
      进程中包括多个线程,线程间共享进程资源
     
     
     


      1 、进程是执行着的程序,线程是进程内的一个执行序列。一个进程可以拥有多个线程。
      2 、进程是资源分配的最小单元,线程是执行调度的最小单元。进程拥有独立的资源,多个线程间共享这些资源。
      3、 进程间通信代价较大,线程间通信代价小。
     
     
     

      简单帮助记忆

      开个QQ,开了一个进程;开了迅雷,开了一个进程。

      在QQ的这个进程里,传输文字开一个线程、传输语音开了一个线程、弹出对话框又开了一个线程。

      所以运行某个软件,相当于开了一个进程。在这个软件运行的过程里(在这个进程里),多个工作支撑的完成QQ
    的运行,那么这“多个工作”分别有一个线程。
      
      所以一个进程管着多个线程。
     
      进程是爹妈,管着众多的线程儿子。
     
     
  • 相关阅读:
    学习asp.net比较完整的流程
    [图像思考法]我用图像故事法来理解与记忆冒泡排序
    MVC4与JSON交互的知识总结
    vulhub漏洞环境库内容整理
    kaliapt update时报The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ED444FF07D8D0BF6解决方案
    sqlilabs靶机测试笔记
    Lord_Of_The_Root1.0.1靶机测试笔记
    utf16的单引号乱码,用于post型宽字节注入
    ubuntu16.04报错AttributeError: module 'platform' has no attribute 'linux_distribution'
    一文搞定OSCP的缓冲区溢出
  • 原文地址:https://www.cnblogs.com/zlslch/p/7416809.html
Copyright © 2020-2023  润新知