select函式使用

2022-04-25 10:46:08 字數 390 閱讀 4888

這兩天寫了這麼一段**,select直接返回-1,錯誤資訊是「invalid argments」,顯然沒有達到阻塞超時的效果。

**如下:

bool issocketwaitread(inf fd,int usec)

這段**在標準的linux環境可以執行,但是在arm體系架構的國產化作業系統下,返回值永遠是-1

修改之後:

bool issocketwaitread(int fd,int ms)

從這段**中,引數t_out設定的有問題。這也警告我們,在使用別的函式時,也要初始化struct。

總結:select函式在linux系統程式設計使用頻率很多,它可以監測檔案描述符的讀寫事件,也可以實現小併發伺服器。

乙個結構體的初始化,考驗的是程式設計細節。

select 函式 使用

告知核心等待某一或某些事件發生 而後喚醒程序 或超時返回 int select int maxfdp1,fd set readset,fd set writeset,fd set excepset,const struct timeval timeout 返回準備好的描述符數量 超時返0錯誤 1 主...

select函式的使用

select 函式 系統提供 select 函式來實現多路復用輸入 輸出模型。原型 include sys time.h include unistd.h select 函式 系統提供 select 函式來實現多路復用輸入 輸出模型。原型 include sys time.h include uni...

select函式使用總結

函式原型為 int select intmaxfdpl,fd set readfds,fd set writefds,fd set read exceptfds,struct timeval tvptr 1 前面文章已詳細解釋最後乙個引數,表示超時的引數,但是在除錯過程中發現設定了超時時間,但只有第...