package com.dnaer.core.user.utils.executors; import java.util.concurrent.*; class FutureRunnable implements Callable<String> { @Override public String call() throws Exception { System.out.println("====== print call futures ========"); return "future"; } } public class TestRunnable { public static void main(String[] args) { try { Callable callable= new FutureRunnable(); FutureTask futureTask = new FutureTask(callable); ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(2,10,100,TimeUnit.MILLISECONDS,new ArrayBlockingQueue<>(1)); threadPoolExecutor.submit(futureTask); String callResult =(String) futureTask.get(); System.out.println(callResult); }catch (Exception e) { e.printStackTrace(); } } }
写一个线程池操作CallableFuture的demo,自定义线程池,有返回的线程调用
最新推荐文章于 2024-06-02 17:50:48 发布