fd_set

'fd_set') 是一組文件描述符(fd)的集合。由於fd_set類型的長度在不同平臺上不同,因此應該用一組標準的宏定義來處理此類變量:
    fd_set set;
    FD_ZERO(&set);       /* 將set清零 */
    FD_SET(fd, &set);    /* 將fd加入set */
    FD_CLR(fd, &set);    /* 將fd從set中清除 */
    FD_ISSET(fd, &set);  /* 如果fd在set中則真 */
      

在過去,一個fd_set通常只能包含少於等於32個文件描述符,因爲fd_set其實只用了一個int的比特矢量來實現,在大多數情況下,檢查fd_set能包括任意值的文件描述符是系統的責任,但確定你的fd_set到底能放多少有時你應該檢查/修改宏FD_SETSIZE的值。*這個值是系統相關的*,同時檢查你的系統中的select() 的man手冊。有一些系統對多於1024個文件描述符的支持有問題。[ 

發佈了27 篇原創文章 · 獲贊 0 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章