并发

摘要:
多进程并发编程1.进程和程序进程:正常运行的程序是一系列程序执行过程的总称(抽象概念)。程序是程序员根据某些编程语言规范编写的一堆字符串。最后一堆文件进程由程序生成,没有进程就没有进程。2.操作系统和流程应用程序不能直接在硬件上运行,必须使用操作系统。因此,进程是由操作系统创建的。操作系统本质上是一个软件。操作系统实际上是控制硬件的应用程序

并发编程
多进程
1.进程与程序  
进程:一个正常运行中的程序 是一系列程序执行的过程的总称(抽象概念)
程序:是有程序员将自己的思维逻辑按照某种编程语言规范编写下来的一堆字符串,最终形成的一堆文件
进程是由程序产生的,没有进程就没有进程
2.操作系统与进程
应用程序无法直接运行在硬件之上,一定要借助操作系统
所以进程是由操作系统创建的
操作系统本质也是一款软件
与普通软件的区别
操作系统是真正在控制硬件的
应用程序是在调用操作系统提供的接口
主要功能:
1.帮你封装隐藏了丑陋复杂的硬件操作,提供了简单的优雅的接口
2.需要将各个应用程序对硬件的竞争变得有序
3.多道技术的演变
空间复用:同一时间在内存中存放多个应用程序
切换
多道本质是为了解决同一时间只有一个应用程序被执行的问题
1.当一个程序A在执行过程中与IO操作(IO通常都是非常慢的)操作系统就会切换到另一个程序执行
感觉就像是多个应用程序都在执行(并发)
2.当一个程序A执行时间过长也会强制切换到其他程序到其他的应用程序,以此保证度多个程序都在执行
3.如果出现了一个优先级更高的任务也会切换
保存状态
当一个操作系统要从一个进程切换到另一个进程时,必须保存当前的状态,以便下次切换回来的时候继续执行
强调:
多个进程之间内存要相互独立,并且是物理层面的隔离(程序是不可能修改的),保证安全性
多道技术带来的好处
1.同一时间可以有多个应用程序在执行 在IO比较多时 极大的提高了效率
弊端:
如果所有应用程序都没有IO操作,反而会降低效率
应用程序的执行效率取决于IO操作,IO操作越多则效率越低
提高效率:
1.减少IO
2.避免被操作系统切换
进程的状态
1.阻塞态
遇到IO
2.运行态
3.就绪态
进程
如何产生进程 与 进程的父子关系
运行一个程序就会产生一个进行
py文件要运行 必须借助python解释器 所以启动的进程时python.exe
同一个程序可以多次运行 产生多个进程
每个进程都会随机分配一个PID(进程ID)
一个进程a开启另一个进程b b就是a的子进程
并发,并行,串行,阻塞
默认情况下 代码是串行
串行:按照顺序依次执行第一行执行完毕后才会执行第二行
需要注意的是 串行执行的过程中 因为计算操作太多也会导致程序卡住 但是这与io阻塞不同的
io阻塞立马将cpu切到其他进程
阻塞:指的是进程的状态
并发:指多个事件同时发生了(单核就是通过切换和保存状态来实现 就是多道技术)
并行:真正意义的同时执行(只在多核处理器才可能出现)

免责声明:文章转载自《并发》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇深度学习文献代码阅读-超分辨(ESRGAN)数据可视化之powerBI技巧(十三)PowerBI作图技巧:动态坐标轴下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Windows 7集成IE11(离线安装包、补丁)

当Win7系统需要集成IE11时,我们需要提前输入六个补丁KB2731771、KB2786081、KB2834140、KB2670838、KB2729094、KB2533623332位★ 百度网盘64位★ 百度网盘。我们需要输入这六个补丁才能更改IE11。此外,我们还需要32位的IE11离线安装包★ 百度网盘64位★ 百度网盘。这六个补丁是安装IE11所必需...

JRebel 6 破解版及使用方法

2.解压下载的jrebel6.0.0-crack.zip、jrebel6.0 jar包和破解文件。假设文件在D:/jrebel步骤:1中解压缩。eclipse下载jrebe插件,可以在市场上下载。2.打开eclipse的窗口首选项jrebel,打开优势选项卡,并将jar包的路径指向D:/jrebel/jrebel.jar。用CMD打开DOS窗口,输入cd/d...

可用的rtmp互联网地址

Rtmp:vlc使用ffmpeg获取Rtmp网络流。代码文件路径:vlc-2.2.1 modulesassesavio。hvlc-2.2.1模块。c在模块的开放回调函数OpenAvio中,使用以下代码打开rtmp网络流。avio_打开(&avio_FLAG_READ);//或者这个avio_open2(&sys-&gt...

移动端媒体查询的一些尺寸参考

device-width是设备实际的宽度,不会随着屏幕的旋转而改变,因此并不适合开发响应式网站。比如iphone5s的屏幕分辨率宽为640,由于retina显示策略,当scale设置为1的时候,对应的media中取到的width为320,当scale设置为0.5的时候,width为640,而device-width始终是320。总结1.device-widt...

mac格式化重装系统

4.选择“重新安装MacOS”5.按照以下步骤中的提示进行操作。安装需要半个多小时。在此期间无法断开网络,否则需要重新安装...

linux下ifconfig, DNS以及route配置

Linux基本网络配置命令1.ifconfig查看网络接口信息。普通用户使用的ifconfig的完整路径:/sbin/ifconfigifconfig网络接口名称:显示指定接口的详细信息。...