関数から呼び出す場合 (すべて Java で記述):
public int hello() {
int a = 1;
executeCallback();
// C: Question lies in this range
return a;
}
public void executeCallback() {
// A: random code to execute before asynccallback
randomClass.randomMethod(int a, int b, AsyncCallback<ReturnType>() {
onSuccess();
onFailure();
});
// B: random code to execute after asynccallback
}
コメント A の内容が実行され、同時に非同期の randomMethod が実行され、B のコメントが実行されることを理解しています。
ただし、randomMethod の実行中に (十分な時間がかかる場合)、関数は呼び出し元 (この場合は「hello」メソッド) に戻り、コメント C のコードの実行を開始するのでしょうか? または、executeCallback は randomMethod が終了するのを待ってから戻りますか?
前者の場合、C のコメントに進む前に、randomMethod が触れる情報が必要であると仮定します。これが当てはまることを確認するには、どうすれば「待機」させることができますか?