Сделайте оба запроса, затем проверьте, когда один из них завершил выполнение другого, и продолжите, если это так.
private String responseOne;
private String responseTwo;
public startRequests() {
makeAsyncRequestOne(new AsyncCallback<String>() {
onSuccess(String response) {
this.responseOne = response;
if (responseTwo != null) {
proceed();
}
}
});
makeAsyncRequestTwo(new AsyncCallback<String>() {
onSuccess(String response) {
this.responseTwo = response;
if (responseOne != null) {
proceed();
}
}
});
}
Как указывает Крис, это может привести к максимальному количеству одновременных запросов к одному и тому же имени хоста, поэтому, если у вас есть много запросов для одновременной отправки, вы можете сохранить очередь запросов и вызвать следующий в proceed()
пока очередь не исчерпается.
Но если вы планируете иметь много одновременных запросов, вам, вероятно, все равно придется переделать свой сервис для пакетных операций.