Linux網路 I O復用優缺點分析

2021-09-22 21:41:53 字數 658 閱讀 8824

poll優點分析:

①使用者關注的事件和核心修改的事件分隔開,每次呼叫不需重新設定;

②poll通過int型別記錄檔案描述符,其取值範圍擴大到系統最大限制; 65535

③使用者關注的所有檔案描述符通過fds指向的使用者結構體陣列來記錄,故可以關注的檔案描述符個數由使用者自己制定,能擴大到系統最大限制;

poll缺點分析:

①核心依舊採用輪巡的方式檢測就緒檔案描述符,時間複雜度為o(n);

②返回值返回就緒檔案描述符的個數,poll僅僅在fds指向的結構體陣列中標記 出哪個檔案描述符就緒,但是使用者探測就緒檔案描述符的時間複雜度依舊是o(n);

epoll優點分析:

①epoll使用者探測就緒檔案描述符的時間複雜度為o(1);

②epoll_wait返回時,只需將就緒檔案描述符拷貝到使用者空間的結構體陣列上;

③使用者關注的事件直接儲存到核心事件表中,每次epoll_wait不需從使用者空間 向核心空間拷貝;

Linux網路程式設計 I O復用之select詳解

解決程序或執行緒阻塞到某個 i o 系統呼叫而出現的技術,使程序不阻塞於某個特定的 i o 系統調 1.當客戶處理多個描述符 通常是互動式輸入 網路套接字 時,必須使用i o復用。2.tcp伺服器既要處理監聽套接字,又要處理已連線套接字,一般要使用i o復用。3.如果乙個伺服器既要處理tcp又要處理...

Linux網路程式設計 IO模型,IO多路復用思想

io多路復用 參考書籍 後台開發 核心技術與應用實踐 linux高效能伺服器程式設計 apue 之前嘮到了socket,嘮到了怎麼建立連線。這篇文章就嘮一下,怎麼向socket中寫資料,怎麼從socket中讀出資料以及高效的讀寫 多路io復用技術 門口坐著瞅 阻塞 一直到 來了老弟 辦事 呼叫者呼叫...

TCP IP網路程式設計 IO復用

引入復用技術,可以減少程序數,無論連線多少客戶端,提供服務的程序只有乙個。select函式可以實現io復用,它可以將多個檔案描述符集中到一起統一監視 是否存在套接字接收資料?無需阻塞傳輸資料的套接字有哪些?哪些套接字發生了異常?下面是具體用例 復用 時分復用 頻分復用 使用select函式完成io復...