socket通信的遇到的问题1

/*使用select对fd可读写,格式*/

while
(ctrl){ //// FD_ZERO(&readSocketSet); FD_SET(readSocketFd,&readSocketSet); ret = select(maxFd,&readSocketSet,NULLNULL) switch(ret){ case 0: break; case -1: exit(-1);break; default//recv data break; } }
若把

FD_ZERO(&readSocketSet);

FD_SET(readSocketFd,&readSocketSet);

屏蔽,

1、linux和linux能接收到数据,只能接收几次。

2、linux无法接收来自windows的数据,select感应不到fd的变化。

今天忘记加上这两句,调试了好久才发现这个问题,谨记。

 

posted @ 2018-12-04 15:10  liqinghan  Views(181)  Comments(0)    收藏  举报