俺最近也碰到了该问题,也想知道一个解决方法。俺的思路是:分异步发送和同步发送两种情况。同步发送时,可以把发送数据分多段,一段段地发;异步发送时,构造一个发送数据的队列,该队列与当前Socket关联,是字节数组队列,发送时从该队取字节数组。此外,同步或异步发送时,还可以采用一个独立的线程专门负责数据队列中数据的发送,此时必须把Socket对象与待发送包一起push到队列。不知到是否可行,供参考。

解决方案 »

  1.   

    发送数据集可以把它当做文件发送就行了,这样就不会出错了吧,或者把它生成为XML文件,然后再利用发送文件的方式发送!
      

  2.   

    还有一个方法,定义一个类,这个类里面设两个属性字段,一个为INT类型,用来储存要发送的DATASET的大小值,另一个则为要发送的DATASET.这样,在发送DATASET的时候,可以把它和它的大小值赋给那个类,再把这个类序列化为字节数组发送.在接收端也定义这样一个类,在接收的时候将接收的字节数组反序列化为那个类,接着就可以用这个类里储存的DATASET大小属性字段的值来实例化一个字节数组,这样的话就不会出现大小不一样的情况了!