Tengo un programa que continuamente sondea la base de datos para cambiar el valor de algún campo. Se ejecuta en segundo plano y actualmente utiliza un método while (true) y un método sleep() para establecer el intervalo. Me pregunto si esta es una buena práctica. Y, ¿cuál podría ser una forma más eficiente de implementar esto? El programa está destinado a ejecutarse en todo momento.Java while loop y Threads!
En consecuencia, la única manera de detener el programa es emitiendo un kill en el ID del proceso. El programa podría estar en el medio de una llamada JDBC. ¿Cómo podría terminar con más gracia? Entiendo que la mejor opción sería diseñar algún tipo de estrategia de salida mediante el uso de una bandera que será revisada periódicamente por el hilo. Pero, no puedo pensar en una forma/condición de cambiar el valor de esta bandera. ¿Algunas ideas?
+1 para una respuesta completa! –