JAVA多线程实现-获取线程执行结果 发表于 2019-01-09 | 分类于 java并发 | JAVA支持有返回值的线程是在JAVA5及之后的版本。 获取线程返回值需要实现Callable接口。 具体代码如下:1234567891011121314151617181920212223242526272829303132333435363738394041import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;public class GetResultOfThread { public static void main(String[] args) throws InterruptedException, ExecutionException { ExecutorService pool = Executors.newFixedThreadPool(3); Callable c1 = new GetResult("c1"); Callable c2 = new GetResult("c2"); Future f1 = pool.submit(c1); Future f2 = pool.submit(c2); System.out.println(f1.get().toString()); System.out.println(f2.get().toString()); pool.shutdown(); }}class GetResult implements Callable { private String oid; public GetResult(String oid) { this.oid = oid; } @Override public Object call() throws Exception { // TODO Auto-generated method stub return oid + ":任务返回的内容"; }} 感谢您的支持,予人玫瑰,手有余香 打赏 微信支付 支付宝
v1.5.2