Java同時実行-エグゼキュータインターフェイス

java.util.concurrent.Executorインターフェースは、新しいタスクの起動をサポートするためのシンプルなインターフェースです。

ExecutorServiceメソッド

シニア番号 方法と説明
1

void execute(Runnable command)

将来のある時点で、指定されたコマンドを実行します。

次のTestThreadプログラムは、スレッドベースの環境でのExecutorインターフェイスの使用法を示しています。

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

これにより、次の結果が得られます。

出力

Running Task!
Task Completed