Olá pessoal, eu estou fazendo uma conexão via socket para um servidor, mas o Palm leva quase 5 minutos para ler os 45 Kb que recebe, eu gostaria que vocês olhassem o código e talvez me dessem alguma dica de otimizar este código, lá vai:
try {
sc = (SocketConnection)
Connector.open("socket://192.168.1.26:8085");
is = sc.openInputStream();
int c = is.read();
int qtd_ast = 0;
StringBuffer sb = new StringBuffer();
while (true)
{
if (c == 42)
{
if (qtd_ast == 0)
{
qtd_ast++;
sb.delete(0,sb.length()-1);
c = is.read();
continue;
}
else if (qtd_ast == 1)
{
qtd_ast++;
sb.delete(0,sb.length()-1);
c = is.read();
continue;
}
else if (qtd_ast == 2)
{
qtd_ast++;
sb.delete(0,sb.length()-1);
c = is.read();
continue;
}
else if (qtd_ast == 3)
{
qtd_ast++;
sb.delete(0,sb.length()-1);
c = is.read();
continue;
}
else if (qtd_ast == 4)
{
qtd_ast++;
sb.delete(0,sb.length()-1);
c = is.read();
continue;
}
else if (qtd_ast == 5)
{
break;
}
}
sb.append((char)c);
c = is.read();
gaProgress.setValue(gaProgress.getValue()+1);
}
}
catch(Exception e) {
} finally {
try {
if(is != null) {
is.close();
}
if(sc != null) {
sc.close();
}
} catch(IOException e) {
e.printStackTrace();
}
}
Aquele qtd_ast significaa quantidade de asteriscos porque o socket no lado servidor ler os dados de clientes, produtos, grupos, subgrupos etc e separa este arquivos por *… [/code]