rxjavaで初心者の私の種類と私は問題に直面している。RxJava2のマルチスレッドや何かが間違っている
2つのネットワークコールがあります。
Observable<ClassA> getClassA(){
return networkExecutor.getClassAFromApi();
}
Observable<ClassB> getClassB(){
return networkExecutor.getClassBFromApi();
}
コードを処理するためには、これらの両方が必要です。そのため、私はそれらの上でジップを行います。また私はこれらの値をプライベートで一時的に保存したいClassスコープ変数はcAとcBと言うことができます。
getClassA().zipWith(getClassB, (classA, classB) -> {
cA = classA;
cB = classB;
return true;
}
問題は、後で同じ手順を繰り返すと、cAとcBが新しい値ではなく古い値になります。
iが同じ前記第2の時間を呼び出したときに、例えばIは、CaとCbのジップ方法ハッシュ呼び出し初めてXXX1、XXX2
、新しいオブジェクトはハッシュのxxx3とxxx4でネットワークから生成されます。
私がこのクラスゲッターと呼んだとき、私はcA xxx1を取得しました。代わりに、すでにxxx3を取得しています。