Socket拉屎模型之epoll

参考如下蚊帐,也就是传说中的异步非阻塞:

e poll e的含义是event---------事件探测。

poll 则是探测的意思。

这里的阻塞主要是说epoll的调用,传入一个结构体用于记录事件,并立即返回 。所以是非阻塞。

这跟poll和select有很大的不通,poll和select是通过轮询的方式,没有事件不返回,所以是阻塞的。

http://blog.csdn.net/ljx0305/article/details/4065058

epoll和poll,select都是异步的。

jdk7 引入的最新的java异步IO比较牛逼。有空可以去学学

参照如下文章。

http://www.iteye.com/topic/472333

通过对比poll和epoll的代码。发现基本上框架都是一样的。区别是,

1.epoll利用事件机制,提前注册到内核中。内核以事件的方式来通知 epoll_wait方法。应用感兴趣的【事件数组】被内核维护。

2.poll 在内核实现上,利用 poll方法对句柄进行轮询,效率较低。应用感兴趣的【事件数组】自己维护。

http://blog.csdn.net/piggyxp/article/details/6922277

猜你喜欢

转载自daojin.iteye.com/blog/1621739
今日推荐