2 回答

TA貢獻1887條經驗 獲得超5個贊
SELECT( ) ——是測試工作區函數;
SELECT(3):意思是返回當前的工作區號,至于SELECT(3)的返回值為0,你再仔細看下題
你只寫select(3)的返回值怎么是0,我也無法準確解釋

TA貢獻1719條經驗 獲得超6個贊
int select (int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct timeval * timeout); Return >0:就緒描述字的正數目 -1:出錯 0 :超時 struct timeval{ long tv_sec; // seconds long tv_usec; // microseconds } 1. 永遠等下去:僅在有一個描述字準備好I/O時返回。置為NULL 2. 等待一段固定時間:在有一個描述字準備好I/O時返回,但不超過由該參數所指向的timeval結構中指定的秒數和微秒數。 3. 不等待:檢查完描述字后立即返回,稱之為輪詢(polling)。該參數必須指向一共timeval結構,其中的定時器值為0(秒數和微秒數)。 readset writeset exceptset指定我們要讓內核測試讀、寫和異常條件的描述字。如果對某一個的條件不感興趣,就可以把它設為NULL。如果三個指針都為NULL,我們就有了一個比sleep()函數更為精確的定時器(sleep()以秒為最小單位,這個以微妙為單位)。
- 2 回答
- 0 關注
- 1079 瀏覽
添加回答
舉報