Concurrencia de Java - Interfaz de ejecutor

Una interfaz java.util.concurrent.Executor es una interfaz simple para apoyar el lanzamiento de nuevas tareas.

Métodos ExecutorService

No Señor. Método y descripción
1

void execute(Runnable command)

Ejecuta el comando dado en algún momento en el futuro.

Ejemplo

El siguiente programa TestThread muestra el uso de la interfaz Executor en un entorno basado en subprocesos.

import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

public class TestThread {

   public static void main(final String[] arguments) throws InterruptedException {
      Executor executor = Executors.newCachedThreadPool();
      executor.execute(new Task());
      ThreadPoolExecutor pool = (ThreadPoolExecutor)executor;
      pool.shutdown();
   }  

   static class Task implements Runnable {
      
      public void run() {
         
         try {
            Long duration = (long) (Math.random() * 5);
            System.out.println("Running Task!");
            TimeUnit.SECONDS.sleep(duration);
            System.out.println("Task Completed");
         } catch (InterruptedException e) {
            e.printStackTrace();
         }
      }
   }
}

Esto producirá el siguiente resultado.

Salida

Running Task!
Task Completed