当我的服务器用send函数向客户端发送数据时,客户端把网络断开了。实际上这次数据发送是失败的,因为客户端不可能收到数据了,但是服务器怎么知道send发送的数据没有被客户端收到呢?

解决方案 »

  1.   

    这个Send是没有返回值的。如果想知道是否接收了,用socket好了
      

  2.   

    对呀,用Socket的握手式就可以了
      

  3.   

    send就是socket api中的send 返回的长度一直都是正确的
      

  4.   

    send;
    然后
    recv
    吗?如果recv超时就表示出错吗?但是我是在完成端口的模式下使用的。有数据来的时候会进入我的处理线程。
      

  5.   

    呵呵,你调用send之后打开的监听线程吗?目标机有没有收到跟send返回的长度没什么关系啊。主要的问题是,目标机收到之后他不会给发送消息的地址一个回复的,应该是没有握手的