• 复习线程


    1.进程

          定义:  进程就是一个程序在一个数据集上的一次动态执行过程。

     

      组成:  进程一般由程序、数据集、进程控制块三部分组成。

     

      程序:  我们编写的程序用来描述进程要完成哪些功能以及如何完成;

     

      数据集: 则是程序在执行过程中所需要使用的资源;

     

      进程控制块: 用来记录进程的外部特征,描述进程的执行变化过程,系统可以利用它来控制和管理进程,它是系统感知进程存在的唯一标志

     

    2.线程

           线程的出现是为了降低上下文切换的消耗,提高系统的并发性,并突破一个进程只能干一样事的缺陷,使到进程内并发成为可能。

     

      线程也叫轻量级进程,它是一个基本的CPU执行单元,也是程序执行过程中的最小单元

     

        组成:由线程ID、程序计数器、寄存器集合和堆栈共同组成。

     

      线程的引入减小了程序并发执行时的开销,提高了操作系统的并发性能。线程没有自己的系统资源

     

    3.线程与进程的区别

    线程是执行的指令集 , 进程是资源的集合

    线程的启动速度要比进程的启动速度要快

    两个线程的执行速度是一样的

    进程与线程的运行速度是没有可比性的

    线程共享创建它的进程的内存空间 , 进程的内存是独立的

    两个线程共享的数据都是同一份数据 , 两个子进程的数据不是共享的 , 而且数据是独立的

    同一个进程的线程之间可以直接交流 , 同一个主进程的多个子进程之间是不可以进行交流 , 如果两个进程之间需要通信 , 就必须要通过一个中间代理来实现

    一个新的线程很容易被创建 , 一个新的进程创建需要对父进程进行一次克隆

    一个线程可以控制和操作同一个进程里的其他线程 , 线程与线程之间没有隶属关系 , 但是进程只能操作子进程

    改变主线程 , 有可能会影响到其他线程的行为 , 但是对于父进程的修改是不会影响子进程

    4.同步和异步

            同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;

     

         异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。

     

           举个例子,打电话时就是同步通信,发短息时就是异步通信

     

    5.并行和并发

            并行指系统具有处理多个任务(动作)的能力

     

           并发是指系统具有同时处理多个任务(动作)的能力

     

     6.阻塞与非阻塞

            阻塞调用是指调用结果返回之前,当前线程会被挂起(如遇到io操作)。函数只有在得到结果之后才会将阻塞的线程激活。

     

            非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前也会立刻返回,同时该函数不会阻塞当前线程

  • 相关阅读:
    201771010128王玉兰《面向对象程序设计(Java)》第十三周学习总结
    201771010128王玉兰《面向对象程序设计(Java)》第十二周学习总结
    王玉兰201771010128《面向对象与程序设计(Java)》第十一周学习总结
    201771010128王玉兰《面向对象程序设计(Java)》第十周学习总结
    王玉兰201771010128《面象对象程序设计(Java)》第九周学习总结
    201771010128王玉兰《面向对象程序设计(Java)》第八周学习总结
    AI核心代码解题思路
    《2018面向对象程序设计(java)课程学习进度条》
    解决结束进程explorer.exe后出现蓝屏的办法
    201771010123-汪慧和 实验四 软件项目案例分析
  • 原文地址:https://www.cnblogs.com/yangli0504/p/9179398.html
Copyright © 2020-2023  润新知