olá,
To com dificuldades em enteder o uso das threads, se alguem tiver um exemplo de como fazer um metodo rodar em segundo plano pra mim olhar , pois tenho um metodo blocking (ServerSocket) e gostaria de deixalo em segundo plano para o usuár o poder executar outras tarefas no gui
// Cria e starta a ThreadThreadthread=newBasicThread1();thread.start();
ai teu processo fica rodando em background…
flw
H
hroberPJ
andersonra,
soh uma duvida, eu posso extender duas vezes a class ? class name extends thread , JFrame ?
jah agradeco a ajuda.
N
NatiPJ
Num pode… Java nao suporta herança multipla… o que voce pode fazer é herdar JFrame e implementar a interface Runnable que é a mesma coisa que herdar Thread, só que é obrigatória a implementação do método Run()
F
FelipePJ
vc tem duas opcoes nesse caso, uma seria criar uma classe separada q estenda a Thread, e outra eh implementar Runnable:
publicclassJanelaextendsJFrameimplementsRunnable{...publicstaticvoidmain(Stringargs[]){Janelaj=newJanela();j.setVisible(true);Threadt=newThread(j);t.start();}...publicvoidrun(){// aqui vc poe os sockets}}
eu particularmente prefiro usar uma classe separada q estenda a Thread, pq dai fica mais especifico e a classe acaba ficando mais facil para modificar, mas eh vc qm decide como fazer
N
NatiPJ
Eu concordo com o Felipe de separar as classes… odeio massaroca… mas tem vezes que precisa… esses dias eu fiz um trabalho que precisava atualizar a tela de tempo em tempo… dae fiz com trhead… e acabei herdando JFrame e implemenando Runnable
H
hroberPJ
galera baseado em que vcs disseram eu fiz o seguiante code