2つ並列処理完了待ち合わせをUniRxを使って書いてみたもの
2つのコルーチンの処理完了待ち合わせをUniRxを使って書いてみたもの
コルーチンをIObservableにして、zipして待ち合わせして、それをStartAsCoroutine()でyield returnできるようにしている。
回りくどいことやってるような気もしなくもないが、スコープの広いフラグ変数を使わなくていい分、コードはシンプルで良いと思う。
ついでに、ProcessA()が終わってからProcessB()をやって、そこまで終わるまで待つ場合はこう書く。
yield return Observable.SelectMany(streamA, streamB).StartAsCoroutine();