Я хочу добиться того, что следующий псевдокод иллюстрирует:Установить будущее от обратного вызова
int functionA() {
Future res;
// ...
setCallbackForSomething(new Callback() {
public void onCall() {
// ...
res = 5;
}
});
// ...
return doSomethingElse(res.get());
}
т.е. блоков functionA до обратного вызова не было названо, затем обрабатывает результат и возвращает что-то.
Возможно ли это с Future
? Обычное использование,
Future res = executor.submit(...);
...
res.get()
, похоже, не работает здесь. Я также не могу изменить тот факт, что мне нужно установить обратный вызов следующим образом.