public static int getFinalResultPar(String s) throws FileNotFoundException,InterruptedException,ExecutionException{

ExecutorService executor = Executors.newFixedThreadPool(8);
Scanner scanner2 = new Scanner(new File(s));
int fR = 0;

List<Callable<Integer>> tasks = new ArrayList<Callable<Integer>>();

while(scanner2.hasNextLine()){
final Scanner lineScanner2 = new Scanner(scanner2.nextLine());
Callable<Integer> c = new Callable<Integer>() {
public Integer call() {

return getDivisorsSum(calSummedUpSum(calOneLine(lineScanner2)));
}
};
tasks.add(c);
}
List<Future<Integer>> futures = executor.invokeAll(tasks);

for (Future<Integer> fs: futures) {
int res = fs.get();
fR += res;
}
executor.shutdown();
return fR;
}
这是小弟的一部分源代码,至于干什么就不用管了,问题是,有没有办法在executor.invokeAll(tasks)之后获得执行tasks的所有线程id?Thread.currentThread.getId吗?谢谢了