package cn.com.jd.test.volatiletest;
import java.util.Random;
import java.util.concurrent.*;
/**
* Created by jihaixiao on 2016/11/18.
*/
public class ThreadPoolCallExecute {
private static ExecutorService threadPool = Executors.newFixedThreadPool(5);
private static CountDownLatch counter = new CountDownLatch(1);
public static void main(String[] args) throws ExecutionException, InterruptedException {
try {
Thread A = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("逻辑A");
counter.countDown();
}
});
A.start();
for (int i=0;i<5;i++){
Future<Integer> future = threadPool.submit(new Caller(12));
System.out.println(future.get());
}
} finally {
threadPool.shu
Java多线程实用篇之实现Callable接口,处理带有返回值的线程!
最新推荐文章于 2024-05-03 01:13:54 发布
本文通过一个实例展示了如何在Java中使用`Callable`接口创建带有返回值的线程,并结合`ExecutorService`和`Future`进行管理。线程执行逻辑A后,启动5个线程执行逻辑B,每个线程返回一个随机增加后的数值。
摘要由CSDN通过智能技术生成