概述:在XFree86的實(shí)現(xiàn)中,為了屏蔽在不同的平臺(tái)下對(duì)fd操作上的差異。考試大提示通過條件編譯的技術(shù)重新定義了一類對(duì)fd操作的宏。如下:
FD_SET(n,p) // 在fd_set中設(shè)置一個(gè)fd
FD_CLR(n,p) // 在fd_set中清楚對(duì)應(yīng)的fd
FD_ISSET(n,p) // 判斷fd是否在fd_set集合中
FD_ZERO(p) // 對(duì)fd_set置空
XFD_ANYSET(p) //判斷fd_set至少有一個(gè)設(shè)置
XFD_COPYSET(src,dst) //拷貝一個(gè)fd_set! src --> dst
XFD_ANDSET(dst,b1,b2) //對(duì)兩個(gè)fd_set進(jìn)行與操作! b1 & b2 --> dst
XFD_ORSET(dst,b1,b2) //對(duì)兩個(gè)fd_set進(jìn)行或操作! b1 | b2 --> dst
XFD_UNSET(dst,b1) ////對(duì)兩個(gè)fd_set進(jìn)行差操作! b1 - dst --> dst
FD_SET(n,p) // 在fd_set中設(shè)置一個(gè)fd
FD_CLR(n,p) // 在fd_set中清楚對(duì)應(yīng)的fd
FD_ISSET(n,p) // 判斷fd是否在fd_set集合中
FD_ZERO(p) // 對(duì)fd_set置空
XFD_ANYSET(p) //判斷fd_set至少有一個(gè)設(shè)置
XFD_COPYSET(src,dst) //拷貝一個(gè)fd_set! src --> dst
XFD_ANDSET(dst,b1,b2) //對(duì)兩個(gè)fd_set進(jìn)行與操作! b1 & b2 --> dst
XFD_ORSET(dst,b1,b2) //對(duì)兩個(gè)fd_set進(jìn)行或操作! b1 | b2 --> dst
XFD_UNSET(dst,b1) ////對(duì)兩個(gè)fd_set進(jìn)行差操作! b1 - dst --> dst