Thread ou While

12 respostas
h4lls

Galera seguinte, minha duvida é sobre o uso do while na Classe ou uma thread externa, queria qual é mais recomendado em termos de processamento etc.

No caso ambos seriam chamados por um evento.

ex.

while(variavelGlobal){
	     capturarImagemDesktop();
	  }

ou

ThreadCapturarImagemDesktop e = new ThreadCapturarImagemDesktop(files,idMaterial); 
Thread t = new Thread(e); 
t.start();

Agradeceria muito se colocarem as diferenças tb

[]s

12 Respostas

L

No meu ponto de vista, é melhor você utilizar uma Thread.
Caso você não à utilize seu processamento da janela irá parar, o usuário não irá conseguir
fazer outra coisa no sistema se o teu while não estiver já terminado.

abraço

h4lls

hum… boa…

yoshikichi

h4lls:
Galera seguinte, minha duvida é sobre o uso do while na Classe ou uma thread externa, queria qual é mais recomendado em termos de processamento etc.

No caso ambos seriam chamados por um evento.

ex.

while(variavelGlobal){
	     capturarImagemDesktop();
	  }

ou

ThreadCapturarImagemDesktop e = new ThreadCapturarImagemDesktop(files,idMaterial); 
Thread t = new Thread(e); 
t.start();

Agradeceria muito se colocarem as diferenças tb

[]s

Cuidado com o termo varivel global, em java isso não existe.
Sobre sua pergunta depende! Vc vai ter outro processo em paralelo?
Qual a necessidade de capturar essas imagens.
Vc pode extrair essa captura em uma classe sempara? Se não for precisar de algo paralelo não vejo a necessidade de Thread.
Threads são legais, mas sou a favor do mais simples possivel, se puder evitar evite.
Mas não é por isso que ira fazer um código espaguete tb.
Mas pelo q entendi eu não utilizaria thread para uma coisa simples (estou interpretando o q vc escreveu).
Falow

yoshikichi

looljunior:
No meu ponto de vista, é melhor você utilizar uma Thread.
Caso você não à utilize seu processamento da janela irá parar, o usuário não irá conseguir
fazer outra coisa no sistema se o teu while não estiver já terminado.

abraço


vc pode utilizar Thread como classe interna anonima, q não irá travar o Frame.
Mas isso seria mais complexo ainda.

andredemelo

Utilize o Thread, somente se você precisar de dois processamentos de uma vez, pois com a utilização do While, você não poderá executar outro processamento antes que o While chegue ao final! No entanto, vai depender do que você realmente vai precisar!

h4lls

Entendi tambem. 2 alternativas.

h4lls

andredemelo ok.

h4lls

No meu caso seria: Minha app rodando, dai o usuario da Alt + Tab ou minimiza a app, Nesse ponto estou gerando um video de todas as suas ações no Desktop. Por isso fiquei em duvida em qual caminho seguir.

andredemelo

Em seu caso então, o melhor a se utilizar é o Thread mesmo ao invéd do While!!

h4lls

creio que sim tb.

J

Pode usar o invokeLater.

java.awt.EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {

                  // o que precisa ser executado aqui.

            }
        });
h4lls
juliocbq:
Pode usar o invokeLater.
java.awt.EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {

                  // o que precisa ser executado aqui.

            }
        });

Interessante....

Criado 29 de setembro de 2010
Ultima resposta 29 de set. de 2010
Respostas 12
Participantes 5