Leí en un comentario al this answer y en muchas otras preguntas sobre la programación (lo siento, no hay referencias) que java.util.Timer
está en desuso. Realmente espero que no, ya que lo estoy usando como la manera más fácil de programar cosas en Java (y funciona muy bien). Pero si está obsoleto, buscaré en otro lado. Sin embargo, un vistazo rápido al API docs for 1.6 no dice nada sobre que esté en desuso. Ni siquiera se menciona en Sun Deprecated List.java.util.Timer: ¿está en desuso?
¿Está oficialmente obsoleto * y, en caso afirmativo, qué debo usar en su lugar?
* Por otro lado, si no está obsoleta, podían dejar de hablar mal de las personas inocentes y brillantemente esta implementadas-set-o-clases?
'java.util.Timer' está lejos de estar escrito brillantemente. Es inflexible y difícil escribir código comprobable. 'ScheduledExecutorService' es mejor en todos los sentidos. – skaffman
@skaffman, eso puede ser correcto. Mi única pregunta es si 'ScheduledExecutorService' es tan liviano como' Timer'. Es solo una envoltura delgada en 'Object.wait (long)' ... ¿qué pasa con Scheduled ...? –
El código fuente está ahí, échale un vistazo. Lo que puedo decir es que las cosas 'java.util.concurrent' (incluyendo' ScheduledExecutorService') han sido diseñadas para un rendimiento extremadamente alto, que 'Timer' nunca fue. – skaffman