Como mandar a llamar una funcion cada cierto tiempo.
Hola compañeros buen día, quisiera saber como mandar a llamar a una función en java cada cierto tiempo,
por ejemplo:
que la función
Se mande a llamar cada segundo por ejemplo.
De antemano muchas gracias.
- chicowed's blog
- Inicie sesión o regístrese para enviar comentarios
Comentarios
busca la respuesta en este mismo sitio.
Por lo regular aqui en java mexico puedes encortrar una buena cantidad de informacion de la que buscas.
aqui te doy un ejemplo.
accion sin la interaccion del usuario
Saludos cordiales.
Executors
La manera recomendada a partir de Java 5 es con un
ScheduledExecutorService
, lo creas usando la claseExecutors
. Y si estás en Java 8 creo que ya puedes pasarle una lambda, pero si no pues envuelves tu método en un Runnable.Una aclaración: en Java no hay funciones como tal. El código que muestras, así solito, no compila; eso tiene que estar dentro de una clase.
En fin:
public void run() {
hola_mundo();
}
};
ScheduledExecutorService timer = Executors.newSingleThreadScheduledExecutor();
timer.scheduleAtFixedRate(tarea, 1, 1, TimeUnit.MINUTES);
Muchas Gracias @ezamudio
Que barbaro mi estimado, implemente tu código y funciona muy bien, sabes donde puedo consultar mas acerca de Executors, de preferencia que sea información clara y no baga, Gracias de antemano...
javadoc
Pues la documentación del API de Java 7 me parece bastante clara, incluso varias de las clases e interfaces de
java.util.concurrent
traen ejemplos:http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ScheduledE...