台灣最大程式設計社群網站
線上人數
1971
 
會員總數:245979
討論主題:189557
歡迎您免費加入會員
討論區列表 >> C/C++ >> VC++ fd_set 問題請教
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
VC++ fd_set 問題請教
價值 : 50 QP  點閱數:671 回應數:0
樓主

Blue
初學者
322 94
1058 172
發送站內信

Hi,各位先進大家好:
因要將程式從 Linux改到Windows(VC++ 2008),
目前遇到以下程式片段,因為VC++並無 fds_bits,不知該如何轉?
請各位先進指導一二,
謝謝!

int PoolingResponse(Mylib::CCON *con) {
unsigned long *m = (unsigned long *)fd_set.fds_bits;

int fd=0, i;
for (i=0; i<sizeof(fd_set) / sizeof (unsigned long); ++i) {
if ((con==NULL) || (con->State!=Mylib::StateConnected)) return FAIL;

fd = sizeof(unsigned long)*i*8;
while(m[i]!=0) {
if ((con==NULL) || (con->State!=Mylib::StateConnected)) return FAIL;
fd += __builtin_ctzl(m[i]); //Get Number of trailing zero bits in long.

handleResponse(fd, con); //處理 server 傳來的 response(回傳給客戶端)

m[i] >>= (__builtin_ctzl(m[i])) + 1;
++fd;
}
}

return OK;
}



搜尋相關Tags的文章: [ fds_set ] ,
本篇文章發表於2016-08-05 12:34
目前尚無任何回覆
   

回覆
如要回應,請先登入.