• <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 | 顯然是錯的
            色欲av伊人久久大香线蕉影院| 91久久九九无码成人网站| 四虎国产永久免费久久| AAA级久久久精品无码区| 久久精品国产亚洲av瑜伽| 久久亚洲欧洲国产综合| 综合久久给合久久狠狠狠97色 | 久久久久一本毛久久久| 久久www免费人成看片| 久久免费精品一区二区| 久久精品国产2020| 久久国产热这里只有精品| 久久超乳爆乳中文字幕| 三级韩国一区久久二区综合| 久久亚洲日韩精品一区二区三区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 伊人久久大香线蕉综合Av| 亚洲成色999久久网站| 久久久久久久精品成人热色戒| 久久婷婷国产麻豆91天堂| 久久精品亚洲AV久久久无码| Xx性欧美肥妇精品久久久久久| 亚洲午夜久久久影院伊人| 久久久久99精品成人片| 好久久免费视频高清| 久久99热这里只有精品国产| 久久伊人中文无码| 久久99精品久久久久久水蜜桃 | 欧美久久久久久精选9999| 五月丁香综合激情六月久久| 伊人久久大香线蕉综合5g| 久久天天日天天操综合伊人av| 国产精品久久国产精品99盘 | 久久综合久久久| 久久精品国产亚洲AV嫖农村妇女| 色狠狠久久综合网| 日本精品久久久久久久久免费| 久久99精品久久久久久不卡| 伊人久久大香线蕉精品| 99久久国产综合精品网成人影院| AV无码久久久久不卡网站下载|