day30 操作系统介绍 进程的创建
今日内容
一.操作系统的简单介绍
二,并发与并行
三.同步异步阻塞非阻塞
四.multiprocess模块
1. 操作系统的简单介绍
多道技术(重点)
空间复用:
时间复用:
进程之间是空间隔离的
分时系统
实时系统
通用操作系统
2.并发与并行
并发: 伪并行,看着像同时运行,其实是任务之间的来回切换(遇到阻塞现象io会提高代码的效率)
两个要记的现象:任务切换+保存状态(保存现场)
并行:真正的同时运行,应用的是多核技术(多个CPU)
进程的三状态: 就绪(等待操作系统调度去CPU里面执行) ,执行,阻塞三种状态之间切换
阻塞:
事件请求:input、sleep、文件输入输出、recv、accept等
事件发生:sleep、input等完成了
时间片到了之后有回到就绪状态,这三个状态不断的在转换。
3.同步异步阻塞非阻塞
提交任务的方式: 同步 异步 任务的执行状态: 阻塞 非阻塞
异步:任务的提交方式,多个任务提交出去,同时执行
同步阻塞: 程序一个一个往下进行,阻塞了也得等着(好比一群人在排队,每个人只能排队,而且不能做别的事情)
异步阻塞: 异步操作是可以被阻塞的,只不过他不是在处理消息的时候阻塞,而是在等待消息通知时被阻塞.(好比一群人不用排队,但是领了号在那里坐着,只能坐着,不能做别的事情)
同步非阻塞: 实际上是效率低下的。想象一下你一边打着电话一边还需要抬头看到底队伍排到你了没有,如果把打电话和观察排队的位置看成是程序的两个操作的话,这个程序需要在这两种不同的行为之间来回的切换,效率可想而知是低下的。
异步非阻塞: 效率更高. 比如说,这个人突然发觉自己烟瘾犯了,需要出去抽根烟,于是他告诉点餐员说,排到我这个号码的时候麻烦到外面通知我一下,那么他就没有被阻塞在这个等待的操作上面,自然这个就是异步+非阻塞的方式.
4.multiprocess模块
格式
from Muletprocessing import Process 进程创建的两种方式:
1). Process(target=f1,args=(n,))# 这里的args接收的是元祖类型
#kwargs={key:值} 或者kwargs接收到的是字典 2).class Myprocess(process):
def __init__(self,n):
#相当于执行process中的__init__()
super().__init__()
self.n=n
def run(self):
pass if __name__='__main__':
#创建对象
M=Myprocess(参数)
#相当于M执行run
M.start()
join方法 :
主进程等待子进程执行结束后再继续执行
import time
from multiprocessing import Process def f1():
time.sleep(2)
print('xxxx') def f2():
time.sleep(2)
print('ssss') if __name__ == '__main__':
p1 = Process(target=f1,)
p2 = Process(target=f2,)
p1.start()
p2.start()
# 主进程等待子进程运行完才继续执行 # p1=Process(target=f1,)
# p1.start()
# p1.join()
# print('开始p2啦') # p2 = Process(target=f2,)
# p2.start()
# p2.join()
# print('我要等了...等我的子进程...')
# time.sleep(2)
# print('我是主进程!!!')
for 循环:
import time
import multiprocessing import Process def func(i):
time.sleep(3)
print(i) if __name__='__main__':
for i in range(20):
p1=process(target=func,args=(i,))
p1.start() # 此时代码执行的for循环是创建了20个数字,执行了func函数
day30 操作系统介绍 进程的创建的更多相关文章
- python之操作系统介绍,进程的创建
操作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石.操作系统需要处理如管理与配置内存.决定系统资源供需的优先次序.控 ...
- Python 操作系统介绍 进程的创建
背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所有内 ...
- python之路--操作系统介绍,进程的创建
一 . 操作系统的作用: 1:隐藏丑陋复杂的硬件接口,提供良好的抽象接口 2:管理.调度进程,并且将多个进程对硬件的竞争变得有序 二 多道技术: 所谓多道程序设计技术,就是指允许多个程序同时进入内存 ...
- python--操作系统介绍,进程的创建(并发)
一 . 操作系统的作用: 1:隐藏丑陋复杂的硬件接口,提供良好的抽象接口 2:管理.调度进程,并且将多个进程对硬件的竞争变得有序 二 多道技术: 所谓多道程序设计技术,就是指允许多个程序同时进入内存 ...
- 操作系统介绍-操作系统历史,IO,进程的三态,同步异步阻塞非阻塞
1.操作系统历史 2.进程,IO,同步异步阻塞非阻塞 操作系统历史: 手工操作: 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式.此时还没有操作系统的概念. 手工操 ...
- Day9 进程理论 开启进程的两种方式 多进程实现并发套接字 join方法 Process对象的其他属性或者方法 守护进程 操作系统介绍
操作系统简介(转自林海峰老师博客介绍) #一 操作系统的作用: 1:隐藏丑陋复杂的硬件接口,提供良好的抽象接口 2:管理.调度进程,并且将多个进程对硬件的竞争变得有序 #二 多道技术: 1.产生背景: ...
- windows进程/线程创建过程 --- windows操作系统学习
有了之前的对进程和线程对象的学习的铺垫后,我们现在可以开始学习windows下的进程创建过程了,我将尝试着从源代码的层次来分析在windows下创建一个进程都要涉及到哪些步骤,都要涉及到哪些数据结构. ...
- (委托事件处理)关于多线程执行显示进度条的实例(转)&&线程间操作无效: 从不是创建控件“rtxtEntryNO”的线程访问它。
关于多线程执行显示进度条的实例! 之前回答了一篇关于怎么在线程中操作进度条的帖子,估计有人看的不是很明白今天没事,写了一个小小的实例,很简单,就2个文件权当抛砖引玉,希望有更好解决方案的人发表一下意见 ...
- 线程间操作无效: 从不是创建控件“”的线程访问它~~~的解决方法~ 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
看两个例子,一个是在一个进程里设置另外一个进程中控件的属性.另外一个是在一个进程里获取另外一个进程中控件的属性. 第一个例子 最近,在做一个使用线程控制下载文件的小程序(使用进度条控件显示下载进度)时 ...
随机推荐
- 浏览器缓存之Expires Etag Last-Modified max-age详解
前段时间去面试移动端的H5开发工程师,在最后面试的时候被问到了max-age Expires Etag有什么不同,在什么情况下应用,当时乱编了一通,自我感觉良好,结果…… 大家懂得,现在讲他们几个的区 ...
- ubuntu下安装anaconda
1. 到官网http://continuum.io/downloads下载anaconda. 选择linux64-bit-python2.7 2. 安装anaconda,在终端输入:cd ~/Do ...
- 在linux中,我为什么不能安装VMware Tools?
在linux中,我为什么不能安装VMware Tools? 应该是操作不正确导致,以下为linux安装VMware Tools的方法. 1.在安装Linux的虚拟机中,单击“虚拟机”菜单下的“安装Vm ...
- appium自动化测试 环境搭建
最 近接手的项目是移动端自动化测试 ,需要用的appium ,头一回使用, 项目特点:1)数据有时效性,需要在短时间内验证大量数据, 2) 人工去一个一个核对发现不了太多BUG. 环境搭建:参考虫师的 ...
- 雷林鹏分享:XMLHttpRequest 对象
XMLHttpRequest 对象 XMLHttpRequest 对象 XMLHttpRequest 对象用于在后台与服务器交换数据. XMLHttpRequest 对象是开发者的梦想,因为您能够: ...
- python 中的 and / or
逻辑运算符:and or not 优先级: not > and > or 数字:0为假, 非0为真: 字符串:空为假,非空为真: 逻辑表达式的值: x and ...
- English trip EM2-LP-1B Favorite Things Teacher:William Full name: Willian Richard Ogzrd 威廉理查德·奥格兹德
课上内容(Lesson) # music pop 流行音乐 light music 轻音乐 rep 说唱音乐 rack 摇滚乐 classic 古典乐 hip-hop n. 街舞,即兴音乐:嘻哈 ...
- Weighted Channel Dropout for Regularization of Deep Convolutional Neural Network
这是AAAI2019的一篇论文,主要是为了解决小数据集的过拟合问题,使用了针对于卷积层的Dropout的方法. 论文的要点记录于下: 1.在训练过程中对于卷积层的channels进行droipout, ...
- Being a Good Boy in Spring Festival HDU - 1850
桌子上有M堆扑克牌:每堆牌的数量分别为Ni(i=1…M):两人轮流进行:每走一步可以任意选择一堆并取走其中的任意张牌:桌子上的扑克全部取光,则游戏结束:最后一次取牌的人为胜者. 现在我们不想研究到底先 ...
- Matlab-8:松弛迭代法(SOR)
function [x,n,flag]=sor(A,b,eps,M,max1) %sor函数为用松弛迭代法求解线性方程组 %A为线性方程组的系数矩阵 %b为线性方程组的常数向量 %eps为精度要求 % ...