当前位置: 首页 > news >正文

代刷网站app制作教程大连 商城网站制作公司

代刷网站app制作教程,大连 商城网站制作公司,怎么联系百度推广,led设计网站建设在高性能的I/O设计中#xff0c;有两个比较著名的模式Reactor和Proactor模式#xff0c;其中Reactor模式用于同步I/O#xff0c;而Proactor运用于异步I/O操作。 在比较这两个模式之前#xff0c;我们首先的搞明白几个概念#xff0c;什么是阻塞和非阻塞#xff0c;什么是… 在高性能的I/O设计中有两个比较著名的模式Reactor和Proactor模式其中Reactor模式用于同步I/O而Proactor运用于异步I/O操作。          在比较这两个模式之前我们首先的搞明白几个概念什么是阻塞和非阻塞什么是同步和异步,同步和异步是针对应用程序和内核的交互而言的同步指的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪而异步是指用户进程触发IO操作以后便开始做自己的事情而当IO操作已经完成的时候会得到IO完成的通知。而阻塞和非阻塞是针对于进程在访问数据的时候根据IO操作的就绪状态来采取的不同方式说白了是一种读取或者写入操作函数的实现方式阻塞方式下读取或者写入函数将一直等待而非阻塞方式下读取或者写入函数会立即返回一个状态值。   一般来说I/O模型可以分为同步阻塞同步非阻塞异步阻塞异步非阻塞IO      同步阻塞IO    在此种方式下用户进程在发起一个IO操作以后必须等待IO操作的完成只有当真正完成了IO操作以后用户进程才能运行。JAVA传统的IO模型属于此种方式      同步非阻塞IO: 在此种方式下用户进程发起一个IO操作以后边可返回做其它事情但是用户进程需要时不时的询问IO操作是否就绪这就要求用户进程不停的去询问从而引入不必要的CPU资源浪费。其中目前JAVA的NIO就属于同步非阻塞IO。        异步阻塞IO    此种方式下是指应用发起一个IO操作以后不等待内核IO操作的完成等内核完成IO操作以后会通知应用程序这其实就是同步和异步最关键的区别同步必须等待或者主动的去询问IO是否完成那么为什么说是阻塞的呢因为此时是通过select系统调用来完成的而select函数本身的实现方式是阻塞的而采用select函数有个好处就是它可以同时监听多个文件句柄从而提高系统的并发性        异步非阻塞IO:    在此种模式下用户进程只需要发起一个IO操作然后立即返回等IO操作真正的完成以后应用程序会得到IO操作完成的通知此时用户进程只需要对数据进行处理就好了不需要进行实际的IO读写操作因为真正的IO读取或者写入操作已经由内核完成了。目前Java中还没有支持此种IO模型。             搞清楚了以上概念以后我们再回过头来看看Reactor模式和Proactor模式。 首先来看看Reactor模式Reactor模式应用于同步I/O的场景。我们分别以读操作和写操作为例来看看Reactor中的具体步骤 读取操作 1. 应用程序注册读就需事件和相关联的事件处理器 2. 事件分离器等待事件的发生 3. 当发生读就需事件的时候事件分离器调用第一步注册的事件处理器 4. 事件处理器首先执行实际的读取操作然后根据读取到的内容进行进一步的处理 写入操作类似于读取操作只不过第一步注册的是写就绪事件。 下面我们来看看Proactor模式中读取操作和写入操作的过程 读取操作 1. 应用程序初始化一个异步读取操作然后注册相应的事件处理器此时事件处理器不关注读取就绪事件而是关注读取完成事件这是区别于Reactor的关键。 2. 事件分离器等待读取操作完成事件 3. 在事件分离器等待读取操作完成的时候操作系统调用内核线程完成读取操作并将读取的内容放入用户传递过来的缓存区中。这也是区别于Reactor的一点Proactor中应用程序需要传递缓存区。 4. 事件分离器捕获到读取完成事件后激活应用程序注册的事件处理器事件处理器直接从缓存区读取数据而不需要进行实际的读取操作。 Proactor中写入操作和读取操作只不过感兴趣的事件是写入完成事件。 从上面可以看出Reactor和Proactor模式的主要区别就是真正的读取和写入操作是有谁来完成的Reactor中需要应用程序自己读取或者写入数据而Proactor模式中应用程序不需要进行实际的读写过程它只需要从缓存区读取或者写入即可操作系统会读取缓存区或者写入缓存区到真正的IO设备.             综上所述同步和异步是相对于应用和内核的交互方式而言的同步 需要主动去询问而异步的时候内核在IO事件发生的时候通知应用程序而阻塞和非阻塞仅仅是系统在调用系统调用的时候函数的实现方式而已。   转自http://xmuzyq.iteye.com/blog/783218 转载于:https://www.cnblogs.com/xujanus/p/3940013.html
http://www.pierceye.com/news/394676/

相关文章:

  • 上街免费网站建设seo外包公司优化
  • 营销型网站的三大特点安徽网站设计方案
  • 优化网站推广教程排名做微信公众号页面的网站
  • 龙岗网站设计效果台州百度关键词排名
  • 政务类网站建设ps做全屏网站画布要多大
  • 百度广告搜索推广seo如何快速排名百度首页
  • 网站调用微信数据网站开发语言windows
  • 网站建设的公青岛专业网站制作设计
  • 东莞营销型网站学动漫设计有前途吗
  • 资讯网站wordpress实例配置
  • 营销网站建设哪里便宜最新房地产新闻
  • 有自己的网站怎么做淘宝客wordpress不自动安装
  • 我自己做网站wcf网站开发
  • 做一个好的网站需要什么店铺设计合同
  • 做网站公司郑州设计师能做网站前端吗
  • 建设工程交易中心网站中国监察报电子版
  • 网站正在建设中 倒计时软文写作范例大全
  • 左中右三栏布局网站建设网站建设微金手指下拉15
  • 做网站公司怎么找数字营销招聘
  • 做网站域名和空间费如何创建一个新网站
  • 前程无忧网广州网站建设类岗位wordpress建站教程视频
  • 徐州建设公司网站最吉祥的公司名字大全
  • wordpress网站前端优化怎么做网站导航地图
  • 成都市武侯区建设局门户网站自助快速建站
  • 专业视频网站开发公司兰州装修公司报价明细表
  • 企业网站管理系统的运维服务建设黑彩网站需要什么
  • 揭阳自助建站大数据就业方向及前景
  • 提供盐城网站开发dreamwearver可以做网站吗
  • 龙岩市建设局网站求大哥给个狼站2022
  • 优化算法 网站让移动网站