Ai
1 Star 0 Fork 59

Yangjianwei/java-performance

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
FutureTaskTest2.java 1.22 KB
一键复制 编辑 原始数据 按行查看 历史
xiandafu 提交于 2019-11-12 14:15 +08:00 . ”test“
package com.ibeetl.code.ch03;
import com.ibeetl.code.ch03.pool.PoolManager;
import java.util.concurrent.Callable;
import java.util.concurrent.Future;
import java.util.concurrent.ThreadPoolExecutor;
/**
* 一个简单使用实例,必须注意,线程池是宝贵资源,必须统一管理(或者像spring那样统一配置)
* @author 公众号 java系统优化
*/
public class FutureTaskTest2 {
public static void main(String[] args) throws Exception {
int a = 10;
int b = 22;
int c = 3;
int d = 9;
//求和a+b+c+d,可以分成俩个FutureTask,分别通过来个线程计算a+b和c+d,执行完毕后再求和
Future<Integer>[] futures = new Future[2];
ThreadPoolExecutor poolExecutor = PoolManager.instance().getQueryPool().getCustomThreadPoolExecutor();
futures[0] = poolExecutor.submit(new Sum(a, b));
futures[1] = poolExecutor.submit(new Sum(c, d));
int total = 0;
for (Future<Integer> task : futures) {
total = total + task.get();
}
System.out.println(total);
}
static class Sum implements Callable<Integer> {
private int x;
private int y;
public Sum(int x, int y) {
this.x = x;
this.y = y;
}
@Override
public Integer call() throws Exception {
return x + y;
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/higher/java-performance.git
git@gitee.com:higher/java-performance.git
higher
java-performance
java-performance
master

搜索帮助