用clinetsocket和serversocket组件做数据的传输,服务端需要不断的往客户端发送数据,而且数据是是一个结构,结构里面包含有数组,用什么方法可以实现?两方需要不断的应答和请求,查找了一些资料要用到写缓冲区和读缓冲区或者写流和读流,客户端需要分几次才能接收,再组装,这个过程怎么弄?用流该怎么写?用缓冲区该怎么写?我刚接触socket有很多问题不明白,请高手帮助。有报酬也可以

解决方案 »

  1.   

    你用tcp有会出现粘包的现象,你要先定义一个包头,包含以下标示+包的长度,
    包体可以使你要发送的数据。
    产生一个包头+包体的Buffer,你可以把结构体的数据都写包体中
    发送端把buffer发送
    接收端 收到后,先分析包的准确性、包的完整性等,正常后就解包就好了
      

  2.   

    有没有一些例子,还有indy组件是不是比原生的好用一些
      

  3.   

    我觉得原生的API比控件好用。
      

  4.   

    我用socket做了个过程监管的程序,还有些问题,有谁可以帮我调一下
      

  5.   

    如果用INDY组件是不是不需要去判断收包的大小问题了