zoukankan      html  css  js  c++  java
  • java--进程与线程

    1.概念:进程是执行着的程序,线程是进程内部的一个执行序列。一个进程可以有多个线程,线程有叫做轻量级进程。

    2.进程与线程之间的区别归纳:

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

     2.2 通信:进程间通信IPC(是指不同进程间传播和交换信息),线程间可以直接读写进程数据段(如全局变量)来进行通信--需要进程同步和互斥手段的辅助,以保证数据的一致性。

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

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

    3.补充:

     进程是资源分配的基本单位,线程是调度的基本单位。

     进程有独立的地址空间,一个进程崩溃后,会在保护模式下不会对其他进程产生影响;线程只是一个进程中的不同执行路径,线程中有自己的堆栈和局部变量(在运行中必不可少的资源 ),但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉。所以多进程的程序要比多线程的程序要安全的多,但是在进程切换时,耗费的资源较大,效率要差一些。但是对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不同用进程。

  • 相关阅读:
    C# dynamic class inherit from dynamicobject
    C# while timespan via Datetime and Stopwatch
    neo4j实现疾病知识图谱实战
    omop cdm数据质控
    mimic-omop专病数据生产ETL
    Oracle表空间与数据文件
    Oracle 11g 静默安装过程(Centos7)
    Hbase插件之Phoenix
    contentEditable
    jsx render
  • 原文地址:https://www.cnblogs.com/javasmf/p/13710576.html
Copyright © 2011-2022 走看看