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?
Consumo de cpu
6 Respostas
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.
bleza vini . eu tentei com thread.sleep , a app fica travada e o tempo passa e nao acontece nada. o que pode ta errado?
Já verificou se o sleep não é maior do que deveria? Como funciona seu código?
Para a aplicação não travar, você precisa criar uma thread separada para a tarefa.
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.
valeu galera ja resolvi o problema.