在下面的代码中,要求是向某个 UI 线程发布一条关于Callable
运行结果的消息。
Future<T> aFuture = aExecutorService.submit(aCallable); //suppose in thread A
aExecutorService.execute(new Runnable() { //suppose in thread B
@Override
public void run() {
try {
final T aresult = aFuture.get();
sendSuccessMesage(aResult);
}catch( . . . . . . e)
. . . . . . .
sendExceptionHappenedMessage(e.getMessage());
. . . . . . .
}
}
如果线程 A 被中断,线程 B 会一直等待结果吗?这样做的替代/安全方法是什么?