Consumo de cpu

6 respostas
H

galera alguem pode me dar uma luz. eu to com uma app desktop em que tenho um loop que fica verificando e comparando a hora. ta tudo certinho porem esta consumindo 100% da cpu. alguem pode dar uma ajuda?

6 Respostas

ViniGodoy

Seu loop deve dar tempo para o resto dos aplicativos processarem. Você pode fazer isso incluindo um pequeno sleep:

while (condicao_do_seu_loop) {
    //Código do seu loop;
    Thread.sleep(200);
}

Caso contrário, o Java tentará usar todo o recurso de processador possível, recaindo nos 100% de CPU que você observou.

Caso a necessidade de verificação/comparação não seja tão intensa, considere a possibilidade de usar um sleep maior. Por exemplo, um sleep do tamanho exato do tempo entre duas verificações.

H

bleza vini . eu tentei com thread.sleep , a app fica travada e o tempo passa e nao acontece nada. o que pode ta errado?

Felipe_de_Menes_e_Mo

Já verificou se o sleep não é maior do que deveria? Como funciona seu código?

Kknd

Para a aplicação não travar, você precisa criar uma thread separada para a tarefa.

H

infelizmente to sem o codigo em maos, mas posso dar uma explicada. eu tenho que ficar verificando a hora e tem que ser precisa. eu fiz com while e o consumo de cpu ta enorme(100%). to no trampo qndo chegar em casa colo o codigo rpa vcs verem.

H

valeu galera ja resolvi o problema.

Criado 18 de fevereiro de 2007
Ultima resposta 2 de mar. de 2007
Respostas 6
Participantes 4