Programa com loop While consumindo muito da cpu o que fazer?

Bom dia! estou desenvolvendo um programa de Backup que fica com um loop while verificando as horas para efetuar o backup em uma hora determinada pelo usuario, o problema é que eu uso um loop While (true) e o programa fica consumindo muito no desempenho da maquina em torno de 25% no meu notebook fica 100%, eu gostaria de saber se tem algum jeito para diminuir esse consumo!

pode não ser a solução mais elegante, mas você pode dar um Thread.sleep() por um tempo, como um minuto, então ele só verifica o horário a cada minuto.

Outra solução é usar Timer

[quote=Rodrigo Sasaki]pode não ser a solução mais elegante, mas você pode dar um Thread.sleep() por um tempo, como um minuto, então ele só verifica o horário a cada minuto.

Outra solução é usar Timer[/quote]

Se a thread do loop for a principal você pode congelar a aplicação com sleep. O ideal é criar um serviço a parte(um timertask, thread, …) e usar esse laço por lá. Outra coisa é configurar a prioridade da thread.