请教下select可写的问题,求解答
对于select来说,可读比较好理解,只要对方发信息过来了就是可读的,但是假如我要使用客户端与服务端对话,可能是客户端先写,也可能是服务端先写,也可能是一方一直发信息,这个可写是如何判断的?我输入的代码要放到哪里?是不是只要连接上的socket都认为是可写的?只要FD_SET(socket,&writefds);则每次检查if(FD_ISSET(socket,&writefds))都会为真?那我的输入行代码要写在哪?怎么判断输入完毕?像下面那样:
if(FD_ISSET(socket,&writefds))
{
cin>>buff;//如果每次都为真如何判断他是否要写?如果他要写自然就OK,但是如果他不写不就阻塞了?
}