码迷,mamicode.com
首页 > 编程语言 > 详细

python 并发

时间:2019-08-13 22:58:17      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:out   计算   process类   recv   click   作业   img   ESS   cep   

并发概念

# 进程 : 进行中的程序就是一个进程
    占用资源 需要操作系统调度
    pid : 能够唯一标识一个进程
    计算机中最小的资源分配单位
# 并发
    多个程序同时执行 : 只有一个cpu,多个程序轮流在一个cpu上执行
    宏观上 : 多个程序在同时执行
    微观上 : 多个程序轮流在一个cpu上执行 本质上还是串行
# 并行
    多个程序同时执行,并且同时在多个cpu上执行
# 同步
    在做A事的时候发起B件事,必须等待B件事结束之后才能继续做A事件
# 异步
    在做A事的时候发起B时间,不需要等待B事件结束就可以继续A事件
# 阻塞
    如果CPU不工作  input accept recv recvfrom sleep connect
# 非阻塞
    CPU在工作
# 线程
    线程是进程中的一个单位,不能脱离进程存在
    线程是计算机中能够被CPU调度的最小单位

 

I/O操作

技术图片
I/O操作 相对内存来说
输入Input输出Output
输入是怎么输入 :键盘\input\read\recv
输出是怎么输出 :显示器 打印机 播放音乐\print\write\send
文件操作 :read write
网络操作 :send recv recvfrom
函数     :print input
View Code

计算机的工作分为两个状态:

技术图片
计算机的工作分为两个状态
    CPU工作   : 做计算(对内存中的数据进行操作)的时候工作
    CPU不工作 : IO操作的时候
CPU的工作效率 500000条指令/ms
View Code

多道操作系统

技术图片
多道操作系统 :一个程序遇到IO就把CPU让给别人
    顺序的一个一个执行的思路变成
    共同存在在一台计算机中,其中一个程序执行让出cpu之后,另一个程序能继续使用cpu
    来提高cpu的利用率
    单纯的切换会不会占用时间 : 会
    但是多道操作系统的原理整体上还是节省了时间,提高了CPU的利用率
    时空复用的概念
View Code

分时操作系统

技术图片
单cpu 分时操作系统 : 把时间分成很小很小的段,每一个时间都是一个时间片,
每一个程序轮流执行一个时间片的时间,自己的时间片到了就轮到下一个程序执行 -- 时间片的轮转
    老教授 24h全是计算 没有io
        先来先服务 FCFS
    研究生 5min全是计算 没有io
        短作业优先
    研究生2 5min全是计算 没有io
    没有提高CPU的利用率 \ 提高了用户体验
View Code

 

 

进程

进程的三状态图

就绪 运行 阻塞

# 就绪 -操作系统调度->运行 -遇到io操作-> 阻塞 -阻塞状态结束-> 就绪
           -时间片到了-> 就绪

 

multiprocess模块多进程

multiple 多元化的

processing 进程

multiprocessing 多元的处理进程的模块

 

Process类

 

python 并发

标签:out   计算   process类   recv   click   作业   img   ESS   cep   

原文地址:https://www.cnblogs.com/Pythonzrq/p/11348907.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!