Concurrence Java - Interface exécuteur

Une interface java.util.concurrent.Executor est une interface simple pour prendre en charge le lancement de nouvelles tâches.

Méthodes ExecutorService

N ° Sr. Méthode et description
1

void execute(Runnable command)

Exécute la commande donnée à un moment donné dans le futur.

Exemple

Le programme TestThread suivant montre l'utilisation de l'interface Executor dans un environnement basé sur les threads.

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();
         }
      }
   }
}

Cela produira le résultat suivant.

Production

Running Task!
Task Completed