posts - 28, comments - 13, trackbacks - 0, articles - 16
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

winsock的accept变成不阻塞的可能原因之一

Posted on 2007-05-12 16:48 叶落无痕 阅读(1283) 评论(2) 编辑 收藏

在用这段代码的时候发现accept总是在没有连接就直接返回了:
int clientAddrLen = 0;
cSocket = accept(lSocket,(SOCKADDR*)&clientAddr,&clientAddrLen);

弄了N久后才发现是这个问题,之前看MSDN还以为第三个参数只是对外传的呢,汗
这段代码就OK了
int clientAddrLen = sizeof(SOCKADDR);
cSocket = accept(lSocket,(SOCKADDR*)&clientAddr,&clientAddrLen);

第三个参数也参与控件的