关于线程池中线程失败的问题
隐藏起来 2013-04-25 09:36:40 我创建了一个Excutor,往里面扔了3个callable并将引用保存到一个map中,过一段时间来查看线程执行结果的时候,发现有一个任务失败了。伪代码如下:
装入:
for(..){
Future<> future = exec.submit(task);
map.put(taskName, future);
}
查看执行结果
while(Future<> future : map.entry){
future .get();
}
这时,我发现这三个线程中有一个线程执行失败了,而业务又不允许有失败,因此必须重新执行。此时该怎么处理比较恰当又代码没那么臃肿繁琐呢?
求大神解答,谢谢