解决方案 »

  1.   

    现在我已经通过GCDAsyncSocket 类创建了一个TCP连接,我的软件作为客户端,连接另一个服务器。我的客户端收服务器发的数据很流畅,但是我的客户端发给服务器的数据却有延时。我是8个字节8个字节发的数据。但是服务器收到都是96,104个字节这样收的。但是我在服务器上的另一个tcp客户端发送数据给服务器,服务器却收的很流畅,都是8个字节8个字节收的、在IOS中,GCDAsyncSocket类中怎么设置发送延时啊,有没这样的设置项
      

  2.   

    GCDAsyncSocket
    发送过快的时候有粘包现象
    解决方案就是设置包头
      

  3.   

    TCP不是客户端发几次数据服务器端就接收几次数据,要以流的眼光来看待这些数据。通常的做法是在包头里面包含数据包的长度,然后接收端就可以根据这个信息读取指定长度的数据之后再将整个数据包提交给上层应用进行处理。
      

  4.   

    http://blog.csdn.net/tonny_guan/article/details/8803090这里有个相关的链接地址,你可以进去看看,或许能对你有帮助
      

  5.   

    在吗。我用GCDAsyncSocket类实现的TCP连接,我是客户端,怎么在包头中设置数据包长度呢。能不能再指点下,这个问题困惑我快半个月了
      

  6.   

    所谓的包头,其实就是在实际需要传输的数据之前添加的一些标识。GCDAsyncSocket只是一个数据通道。包标识(固定长度)包长度(固定长度,包长度=包标识长度+包长度所占长度+包数据长度)包数据(不定长)
    发送端按这个格式去封装数据包,接收端收到数据后按照这个格式去解析数据。
    耗时操作建议另起线程去处理。
      

  7.   

    TCP本来就可能存在分包的呀,你程序一次发送的数据不一定会在另一方一次收到的。