• python-并发编程概念


    概念

    • 隐藏丑陋复杂的接口,提供良好的接口  
    • 管理调度进程(运行当中的程序),并将多个进程对硬件的竞争变得有序  
    • 概念  
      • 就是操作系统可以同时运行多个任务  
      • 如:一边在用浏览器上网,一边在听MP3,一边在用Word赶作业,这就是多任务      
    • 实现方式  
      • 多进程模式    
      • 多线程模式      
      • 多进程+多线程模式  
    • 总结  
      • 线程是最小的执行单元  
      • 进程由至少一个线程组成。  
      • 如何调度进程和线程,完全由操作系统决定,程序自己不能决定什么时候执行,执行多长时间。  
    • 同一时刻有多个CPU在处理任务  
    • 多进程  
    • 并行的关键是你有同时处理多个任务的能力。
    • 同一时刻只有一个CPU在处理任务
    • cpython中的多线程   (CPthon里因为GIL锁的限制)
    • 并发的关键是你有处理多个任务的能力,不一定要同时。  (其实就是有任务来的时候可以不阻塞, 那么就是并发)
    • 一步一步的按计划执行每一个小任务  
    • 也就是必须一件一件事做,等前一件做完了才能做下一件事。  
    • 例如普通B/S模式(同步):提交请求->等待服务器处理->处理完毕返回这个期间客户端浏览器不能干任何事  
    • socket  
    • 同时执行多个小任务      (其实就是回调, 当一个任务完成后自动执行某个函数)  # 而且, 并发其实就是通过异步实现的
    • socketserver      
    • 就是调用(函数),(函数)没有接收完数据或者没有得到结果之前,不会返回。  
    • 就是调用(函数),(函数)立即返回,通过select通知调用者。  
    • 同步IO和异步IO的区别  
      • 数据拷贝的时候进程是否阻塞!        
    • 阻塞IO和非阻塞IO的区别  
      • 应用程序的调用是否立即返回!  

    操作系统介绍

    1,多道技术

      针对单核,实现并发

      空间上的复用:如,内存中同时有多道程序

      时间上的复用:复用同一个时间片

    2,分时系统

      由于不断地分时,CPU效率有少许下降

      特点:

    • 多路性
    • 交互性
    • 独立性
    • 及时性

    3,实时系统

      专项的去响应某一程序

  • 相关阅读:
    iOS:UIToolBar、toolbarItems、BarButtonItem的几种关系
    iOS:UIToolBar控件的使用
    iOS:制作九宫格
    iOS:转载:UIControl的使用
    iOS:UIPickerView选择器的使用
    iOS:NSDate的主要几种时间形式
    iOS:步进UIStepper、滑动块UISlider、开关UISwitch的基本使用
    iOS:NSBundle的具体介绍
    h264码流分析及其工具
    零基础学习视频解码之FFMpeg中比较重要的函数以及数据结构
  • 原文地址:https://www.cnblogs.com/sunch/p/9554732.html
Copyright © 2020-2023  润新知