Avatar
単純に、エラーが流れるとdisposeなんで、flatMapの中でsubscribeを毎回作れば都度disposeされても問題ないという話です。
11:13 AM
stream.map(someThrowableFunc).catchError().subscribe() // これだとエラーが流れた時点でおしまい stream.flatMap { Observable.from(someThrowableFunc($0)).catchError() // Errorでdisposeになるのはこのsubscription }.subscribe() // 従ってこちらには影響しない
11:13 AM
これはcompleteが流れる場合も同じように (edited)
11:14 AM
で、retryはErrorが流れてきた場合はsubscribeしなおす、というものなので、源流でreplayがついてる場合はErrorを無限に繰り返すことになる