IO多路轉接之poll

2021-08-20 17:34:45 字數 460 閱讀 3270

poll函式

#include int poll(struct pollfd *fds, nfds_t nfds,int timeout);
pollfd結構

struct pollfd ;
fds:poll函式監聽的結構列表

nfds:fds陣列的長度。

timeout:喚醒時間

pollfd結構體events常用取值為:pollin(資料可讀)和pollout(資料可寫)

poll的優點:

poll使用結構體來儲存檔案描述符。

結構體中包含了要監視的事件和監視過的事件。

poll沒有最大數量限制。(但數量過大效能會下降)。

poll的缺點:

需要輪詢來獲取就緒的檔案描述符。

浪費cpu資源

連線大量的客戶端,效能會下降。

I O多路轉接之poll

poll 函式 這個函式是某些linux系統提供的用於執行與select 函式同等功能的函式,下面是這個函式的宣告 include int poll struct pollfd fds,nfds t nfds,int timeout 引數說明 fds 是乙個struct pollfd結構型別的陣列,...

I O多路轉接(二) poll函式

第二篇介紹poll函式,不說廢話直接來看函式。int poll struct pollfd fds,nfds t nfds,int timeout 返回值 大於0,準備就緒的file descriptor數量 等於0,超時 小於0,出錯。引數 fds struct pollfd nfds 關心的fd...

I O多路轉接之poll伺服器

函式說明 include int poll struct pollfd fds,nfds t nfds,int timeout 引數說明 fds 是乙個struct pollfd結構型別的陣列,用於存放需要檢測其狀態的socket描述符 每當呼叫這個函式之後,系統不會清空這個陣列,操作起來比較方便 ...