Ir ao conteúdo
  • Cadastre-se

Jose Renato Carneiro

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Por favor, sou iniciante em Java e tenho um exemplo de um pequeno programa servidor, onde a cada conexão cria-se uma thread para tratá-la. O trecho que roda na thread (tratamento do que chega do client) é o seguinte: System.out.println ("Iniciou thread ..."); // Cria uma buffer que irá armazenar as informações enviadas pelo cliente BufferedReader inFromClient = new BufferedReader(new InputStreamReader(conexao.getInputStream())); // Cria uma stream de sáida para retorno das informações ao cliente DataOutputStream outToClient = new DataOutputStream(conexao.getOutputStream()); System.out.println ("1"); // Faz a leitura das informações enviadas pelo cliente as amazenam na variável "EscritaCliente" EscritaCliente = inFromClient.readLine(); System.out.println ("2"); // Imprime a String modificada no console do servidor System.out.println("Chegaram: "+EscritaCliente.length()+" bytes"); // Imprime a String modificada no console do cliente outToClient.writeBytes("Chegaram aqui "+EscritaCliente.length()+" bytes"); System.out.println ("Fim de thread."); O que está ocorrendo é que quando há uma conexão o sistema fica parado no comando readLine() enquanto o socket estiver aberto. O trecho seguinte (println("2") só é executado quando o socket é fechado. Gostaria de tratar imediatamente o que chega do client. Como eu poderia proceder ? Obrigado antecipadamente.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...