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

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

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

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

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

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

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

    3.补充:

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

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

  • 相关阅读:
    SNMP、rrdtool
    mysqldump命令备份数据
    Ansible之playbook&&roles
    敏捷软件开发 原则、模式与实践 第9章的例子程序(C#版)
    iis websocket
    EDM 邮件营销 html&css编写建议和规范整理
    Microsoft .NET Framework
    线程上下文切换
    系统调用 用户态 内核态
    文件系统
  • 原文地址:https://www.cnblogs.com/javasmf/p/13710576.html
Copyright © 2011-2022 走看看