Cómo implementar tareas programadas de Java
* Hilo ordinario
* Este es el método más común, crea un hilo y déjalo ejecutar en un bucle while,
* Timing The El efecto de la tarea se logra mediante el método del sueño. Esto se puede lograr rápida y fácilmente usando el siguiente código:
* @author GT
*
*/
public class Task1 {
public static void main(String[] args) {
// Se ejecuta en un segundo
final long timeInterval = 1000;
p >Runnable runnable = new Runnable() {
public void run() {
mientras (verdadero) {
// --- - ---Código de ejecución de tarea
System.out.println("Hello !!!") )
// ------- Eso es todo por ahora
intente {
Thread.sleep(timeInterval);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
Subproceso = nuevo subproceso (ejecutable);
thread.start();
}
}
}
[java]Ver copia pura
importar java.util.Timer;
importar java.util.start y cancelar la tarea para controlar 2gt al ejecutar la tarea por primera vez, puede especificar lo deseado; tiempo de retraso
*
* Cuando se implementa, la clase Timer puede programar tareas, y TimerTask se implementa implementando tareas específicas en el método run(). Las instancias de temporizador pueden programar múltiples tareas y son seguras para subprocesos.
* Cuando se llama al constructor de Timer, crea un hilo que se puede utilizar para programar tareas.
El siguiente es el código:
*
* @author GT
*
*/
public clase Tarea2 {
public static void main(String[] args) {
Tarea TimerTask = new TimerTask() {
@Override
public void run() {
//La tarea a ejecutar se ejecuta aquí
System.out.println("Hello!!!!") )
}
};
Temporizador temporizador = nuevo Temporizador();
retraso largo = 0;
intervaloPeriodo largo = 1 * 1000;
///programa la tarea que se ejecutará en un intervalo
timer.scheduleAtFixedRate(task, delay, intevalPeriod);
}/ /End main
}TimeUnit;
/**
*
*
* ScheduledExecutorService está disponible como Java SE5 Se introduce la clase de utilidad de concurrencia java.util.concurrent, que es la implementación más ideal de tareas programadas.
* En comparación con los dos primeros métodos, tiene las siguientes ventajas:
* 1gt; En comparación con la naturaleza de un solo subproceso de Timer, realiza tareas a través del grupo de subprocesos
p>p>
* 2gt; Puede establecer el tiempo de retraso de la primera ejecución de la tarea de manera muy flexible
* 3gt;
*
*Aquí está el código de implementación. Mostramos el ejemplo a través de ScheduledExecutorService#scheduleAtFixedRate y agregamos un retraso a la primera ejecución mediante parámetros en el código de control.
*
*
* @autor GT
*
*
*/
clase pública Task3 {
public static void main(String[] args) {
Ejecutable ejecutable = new Runnable() {
public void run() {
//La tarea a ejecutar se ejecuta aquí
System.out.println("Hello!!!") )
}
};
ScheduledExecutorService = Ejecutores
.newSingleThreadScheduledExecutor();
//El segundo parámetro es el tiempo de retraso para una ejecución, el tercer parámetro es el temporizador.