67,549
社区成员




public class BioProcessor implements Callable<Boolean> {
private Biomini bio;
public BioProcessor(Biomini bio) {
this.bio = bio;
}
@Override
public Boolean call() {
// 转码操作...
// 通过转码后得到对比模板...
// 进行对比 ...
return true;// 最后返回对比结果true或false
}
}
调用案例:
public static void main(String[] args) {
// 线程池参数自己研究下
ExecutorService executor = new ThreadPoolExecutor(3, 10, 0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(200));
// 你的Biomini请求列表
List<Biomini> bioList = new ArrayList<Biomini>();
// ... 经过一系列操作 ....
// 加入到线程池获得<Bio对象,Future>对应关系
Map<Biomini, Future<Boolean>> futureMap = new HashMap<Biomini, Future<Boolean>>();
for (Biomini bio : bioList) {
futureMap.put(bio, executor.submit(new BioProcessor(bio)));
}
// 都加入线程池后,再获取结果集
for (Map.Entry<Biomini, Future<Boolean>> entry : futureMap.entrySet()) {
// 如果匹配上的操作
try {
if (entry.getValue().get()) {
// 通过entry.getKey()得到对应的Biomini对象
}
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
}