锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

thread47 - Future和FutureTask

时间:2023-10-17 22:37:01 t236集成电路

package com.neutron.t23;  import java.util.concurrent.*;  /**  * 线程池接口  * 了解线程池Future,FutureTask  */ public class T236Future {      /**      * Future包含两部分      *      FutureTask:要执行的任务,实现了Runnable接口      *      Future返回值      */     public static void main(String[] args) throws InterruptedException, ExecutionException {         // FutureTask代表未来执行的结果是Integer类型         FutureTask task = new FutureTask<>(() -> {             TimeUnit.MILLISECONDS.sleep(500);             return 1000;         });         // 运行任务         new Thread(task).start();         System.out.println(task.get());   // 阻塞,任务什么时候完成,什么时候结束,task返回值就是FutureTask           // 创建固定尺寸为5的线程池,实现所有线程池ExecutorService接口         ExecutorService service = Executors.newFixedThreadPool(5);         Future task1 = service.submit(() -> {             TimeUnit.MILLISECONDS.sleep(500);             return 1;         });          System.out.println(task1.get());         // Future.get结果,任务将结束         System.out.println(task1.isDone());      // 任务是否完成         service.shutdownNow();     }  } 

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章