Galera a parada é o seguinte:
Eu estou criando um tipo de Bate papo em Rede em java…
Eu crio o Server, o Cliente, etc… tudo direitinho…
mas para q o cliente fique lendo as mensagens do Server(ou vice e versa) tem-se q fazer um loop infinito(se estiver errado me corrijam)…
mas qndo eu coloco o While a tela trava e enquando eu não finalizar um dos dois a tela fica travada…
podem me ajudar aee por favor?:lol:
Primeiro: Estude o que é uma Thread e como ela se diferencia de um Processo (não só em Java, mas no contexto Sistema Operacional);
Segundo: Veja um exemplo de chat com sockets já feito, que provavelmente usará Threads e entenda como o código funciona (Aqui tem um artigo aqui do GUJ justamente sobre Threads e Sockets num programa de chat);
E por último e mais importante, estude Orientação a Objetos. Uma vez entendida você vai acabar entendendo como funcionam muitas classes do Java e qualquer outra linguagem orientada a objetos. Recomento fortemente que estude pelo menos esse super tutorial da Caelum (que acabo de me dar conta que apoia e desenvolve o GUJ ), ele é muito completo. Aprendi muita coisa que julga saber nesse tutorial.
Espero ter ajudado.
PS: procura nos artigos do GUJ ou no mecanismo de busca do site que provavelmente já existe um tópico solucionado sobre o que você procura. Eu nunca precisei criar um tópico (que eu lembre), sempre achei respostas e ideias que me ajudaram.
landantas, se entendi bem, você está utilizando uma GUI no servidor também, certo? Se sim, faz-se necessário o uso de threads. Caso contrário, poderias colocar o loop em um servidor que rodaria em background e pronto.
Aee galerinha:!:
A parada do loop para ler as mensagens já foi resolvido mas agora eu estou com outro problema:
Agora estou criando um joguinho em rede onde os cliente irão enviar o seu posicionamento e o servidor vai responder com o posicionamento dos outros jogadores…
Mas agora o problema é o seguinte:
Como fazer para vários clientes se conectarem pelo servidor em uma só porta…
o codigo está ficando + ou - assim:
Exception in thread "Thread-3" java.lang.NullPointerException
at jogo.Servidor$iniciar.abrir_porta(Servidor.java:22)
at jogo.Servidor$iniciar.run(Servidor.java:16)
[quote=landantas]Ah:!:
E quando eu executo dá esse erro:
Exception in thread "Thread-3" java.lang.NullPointerException
at jogo.Servidor$iniciar.abrir_porta(Servidor.java:22)
at jogo.Servidor$iniciar.run(Servidor.java:16)
Fiquem com DEUS:!:[/quote]
[b]Onde está o seu deus agora?[/b]
Então cara o problema ai é que seu socket esta no limbo. Resolver esse problema é uma jornada a qual tens que seguir sozinho filho :).