Consultar Thread

3 respostas
T

Como eu faço para consultar que mandei executar a partir do método abaixo

public class ExecuteThread extends Thread {


	public List<String> executeParal(final String dtMovto){	new Thread() {
		
		@Override
		public void run () {
			ExecuteService ser = new ExecuteService();
			try {
				list = ser.execute(dtMovto);
				if(list != null){
					existeMsgErro = true;
					listaMsg.add(list);
				}
			} catch (Exception e) {
				e.printStackTrace();
				log.error("Erro  : ".concat(e.getMessage()));
			}
		}
	}.start();

}

3 Respostas

Jonas_B_a_r_r_o_s

Se você está estendendo Thread não precisa necessariamente implementar o metodo run(), seria necessario caso você implementasse Runnable. Como você não vai precisar de um metodo run, então pode criar um metodo que retorne listaMsg, e a partir daí você pode usar o retorno dessa ArrayList em um metodo de consulta

rmendes08

E porque alguém estenderia a classe Thread a não ser para sobrescrever run() ?

Jonas_B_a_r_r_o_s

Você pode usar tranquilamente uma classe que estenda de Thread sem implemetar o run(). O metodo run() funciona como o metodo main(). Por exemplo, se você quer que um codigo execute primeiro em sua classe, então coloque o run() nela. Mas, nem sempre isso se adequa ao que você pretende fazer em seu programa.

Runnable é uma interface que estende de Thread. Essa interface está la com seu unico metodo run() pronta para ser chamada caso você precise do run() em seu codigo. Mas, digamos que não precise, então não implemente Runnable, porque se não obrigatoriamente você devera usar o run().

Porque não usar o run() numa Trhead? Oras, as funcionalidades das Threads
As Threads tem muitos metodos bem uteis, dá uma pesquisada ai…

Criado 28 de junho de 2016
Ultima resposta 29 de jun. de 2016
Respostas 3
Participantes 3