• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            那誰的技術博客

            感興趣領域:高性能服務器編程,存儲,算法,Linux內核
            隨筆 - 210, 文章 - 0, 評論 - 1183, 引用 - 0
            數據加載中……

            epoll相關資料整理

            學習epoll有一段時間了,最近終于有一個服務器采用了epoll模型,從中積累了一些epoll的資料.個人感覺目前可以找到的epoll相關的資料太少了,因為epoll僅被linux 2.6以上版本內核所支持,它的應用時間還比較短暫, 而一些講解網絡編程的相關權威書籍(如已逝的stevens的UNP)都沒有講解這個不能跨unix平臺的專有技術,而epoll帶來的巨大效率提高又使得這項技術很有吸引力, 于是我決定將個人遇到的epoll相關問題整理一下, 隨著對epoll的理解深入, 這份資料將不斷的完善下去.

            需要說明的是, 這份教材不適合網絡編程的初學者, 這里假設讀者具備一定的網絡編程基礎, 使用過多路復用IO如select等.

            1) 能不能給一個使用epoll相關API進行IO監控的示例?
            在<<epoll學習筆記>>中有一個簡單的示例說明epoll相關API的使用, 但是這個示例是非常簡單的, 它僅僅關注于如何使用epoll相關函數上面, 如果要更好的使用epoll, 還需要自己動手以及閱讀資料.

            2) epoll和select都屬于多路復用IO嗎?與阻塞IO相比多路復用IO有什么優點?
            在<<epoll為什么這么快>>, 重點是解釋epoll對比select在效率上提高的原因, 但是同時也解釋了多路復用IO的工作原理.

            3) epoll的ET模式和LT模型有什么區別?
            <<epll學習筆記>>通過一個實例說明了兩者之間的差異, 但是我想, 如果結合著man文檔(man epoll)來看效果會更好些.

            4) 我的服務器是采用多進程模型的, 我的父進程首先創建了epoll所使用的fd, 然后再創建子進程, 為什么使用的時候沒過多久epoll_wait函數就一直返回0, 這樣IO事件就不會得到通知了?
            太巧了, 筆者也遇到過類似的問題, 花了好幾天的時間進行調試, 很幸運的是, 你不必像我這樣耗費時間在這個問題上面了, 因為在<<多進程服務器中,epoll的創建應該在創建子進程之后>>中已經有了解答.

            5)epoll的效率比起select來有很大的提高, 這里面有什么秘密嗎?
            其實原理很簡單, 就是計算機世界中"空間換時間"思想的體現, 在<<epoll為什么這么快>>中有詳細的解釋.



            posted on 2008-10-13 22:11 那誰 閱讀(11293) 評論(4)  編輯 收藏 引用 所屬分類: 網絡編程服務器設計Linux/Unix

            評論

            # re: epoll相關資料整理  回復  更多評論   

            記號 學習epoll時好好看看
            2008-10-16 17:50 | 浪跡天涯

            # re: epoll相關資料整理  回復  更多評論   



            windows中的完成端口也不錯。Boost中的ASIO庫也不錯,前段時間我就專門去看Boost的ASIO的文檔了。推薦博主看一下。
            2008-10-16 20:43 | 海邊沫沫

            # re: epoll相關資料整理[未登錄]  回復  更多評論   

            "而一些講解網絡編程的相關權威書籍(如已逝的stevens的UNP)都沒有講解這個不能跨unix平臺的專有技術",epoll是模仿UNIX下的/dev/poll來移植到Linux實現的,epoll也是個模仿的,只不過在Linux下打敗了/dev/epoll。
            2010-01-23 08:48 | li

            # re: epoll相關資料整理  回復  更多評論   

            這幾篇epoll的博客,如此糟糕,你還好意思提及stevens?
            2012-08-12 18:07 | 顯然是錯的
            国产精品久久影院| 久久久亚洲欧洲日产国码aⅴ| 久久国产成人精品麻豆| 久久99热狠狠色精品一区| 国产成人久久精品麻豆一区| 久久久久久久久久免免费精品| 亚洲国产精品一区二区三区久久| 亚洲精品白浆高清久久久久久| 久久综合久久久| 国产精品久久久久久久人人看| 99国产欧美久久久精品蜜芽| 久久国产一片免费观看| 久久人妻少妇嫩草AV无码专区| 国产午夜电影久久| 久久精品国产亚洲av影院| 久久精品视频91| 热久久这里只有精品| 亚洲香蕉网久久综合影视| 99久久人人爽亚洲精品美女| 人妻久久久一区二区三区| 色99久久久久高潮综合影院| 久久精品中文闷骚内射| 青青草原综合久久大伊人| 久久国产精品国语对白| 久久精品无码一区二区三区| 亚洲色大成网站www久久九| 午夜视频久久久久一区| 久久WWW免费人成—看片| 免费观看成人久久网免费观看| 日韩久久久久久中文人妻| 午夜精品久久久久久| 久久se精品一区二区影院| 国产精品美女久久久m| 亚洲AV无码久久精品蜜桃| 久久久久久久精品成人热色戒| 久久激情亚洲精品无码?V| 国产三级精品久久| 日日狠狠久久偷偷色综合0| 欧美亚洲国产精品久久久久| 亚洲国产小视频精品久久久三级| 婷婷久久综合九色综合九七|