Galera,
tenho os dois códigos abaixo:
public boolean writeObject(Object ob) throws Exception{
byte[] bs = cripto.serializar(ob);
System.out.println("Tamanho original "+bs.length);
byte[] compactado = zh.zipaDados(bs);
System.out.println("Tamanho do envio: "+compactado.length);
//byte[] tudo = new byte[tipo.length + bs.length];
//System.arraycopy(tipo, 0, tudo, 0, tipo.length);
//System.arraycopy(bs, 0, tudo, tipo.length, bs.length);
*****************output é um DataOutputStream
output.writeInt(compactado.length);
for (byte b : compactado)
output.writeByte(b);
output.flush();
return true;
}
e o seguinte:
public boolean writeObject(Object ob) throws Exception{
ObjectOutputStream ostream2 = new ObjectOutputStream(sok.getOutputStream());
ostream2.writeObject(ob);
ostream2.flush();
return true;
}
Acontece q, excluindo o tempo de compactação e serialização, o ObjectOS é 3x mais rápido… sou ruim nisso, nao estou conseguindo colocar um buffer nesse DataOS, q é o q a galera recomenda… o que há de errado no código?