
IO
木霖森77
这个作者很懒,什么都没留下…
展开
-
IO之Reactor模式
说起Reactor模式我们知道的就是在Java中的NIO就是基于Reactor模式。今天我们来学习一下Reactor模式的原理。在处理Web请求时,通常有两种体系结构,分别为:thread-based architecture(基于线程)、event-driven architecture(事件驱动)Thread-based architecture 基于线程这样的体系结构一般就是使用多线...转载 2019-04-05 10:52:17 · 293 阅读 · 0 评论 -
IO之 java中BIO NIO AIO原理、区别以及应用
在本篇文章中,我们主要介绍一下java中的BIO NIO AIO,重点是NIO先说一下同步、异步、阻塞和非阻塞。简单来讲,同步和异步是针对内核和应用程序之间的交互而言的;阻塞和非阻塞其实是针对进程在访问数据时,根据IO操作的就绪状态采取的不用方式(就是读取/写入函数的实现方式)。同步/异步是宏观上(进程间通讯,通常表现为网络IO的处理上)的,阻塞和非阻塞是微观上(进程内的数据传输,通常表现...转载 2019-04-05 10:53:39 · 1399 阅读 · 0 评论 -
IO之 Proactor模式 以及与Reactor的区别
首先,两种模型都是事件驱动的处理模型Reactor模式是同步IO模型的实现基础;Proactor模式是异步IO模型的实现基础。先复习一下Reactor模式ReactorReactor模式又叫反应器或反应堆,即实现注册描述符(Handle)及事件的处理器(EventHandler),当有事件发生的时候,事件多路分发器(Event Demultiplexer)做出反应,调用事件具体的处理函数(...转载 2019-04-05 16:17:02 · 350 阅读 · 0 评论 -
select epoll poll的区别
(1)select,poll实现需要自己不断轮询所有fd集合,直到设备就绪,期间可能要睡眠和唤醒多次交替。而epoll其实也需要调用epoll_wait不断轮询就绪链表,期间也可能多次睡眠和唤醒交替,但是它是设备就绪时,调用回调函数,把就绪fd放入就绪链表中,并唤醒在epoll_wait中进入睡眠的进程。虽然都要睡眠和交替,但是select和poll在“醒着”的时候要遍历整个fd集合,而epoll...转载 2019-05-02 11:33:01 · 540 阅读 · 0 评论