.onErrorResumeNext() is very similar to .onExceptionResumeNext(), but as the name implies, it can handle more general errors. .onExceptionResumeNext() handles only throwables of the java.lang.Exception type and its subclasses. .onErrorResumeNext() can catch java.lang.Throwable and java.lang.Error.
In the end, it is a more general handler that can help catch system errors, such as OutOfMemoryError .