src/main/java/io/reactivex/parallel/ParallelFlowable.java
@CheckReturnValue
    public final ParallelFlowable<T> filter(@NonNull Predicate<? super T> predicate, @NonNull ParallelFailureHandling errorHandler) {
        ObjectHelper.requireNonNull(predicate, "predicate");
        ObjectHelper.requireNonNull(errorHandler, "errorHandler is null");
        return RxJavaPlugins.onAssembly(new ParallelFilterTry<T>(this, predicate, errorHandler));
    }
@CheckReturnValue
    public final ParallelFlowable<T> filter(@NonNull Predicate<? super T> predicate, @NonNull ParallelFailureHandling errorHandler) {
        ObjectHelper.requireNonNull(predicate, "predicate");
        ObjectHelper.requireNonNull(errorHandler, "errorHandler is null");
        return RxJavaPlugins.onAssembly(new ParallelFilterTry<T>(this, predicate, errorHandler));
    }
Filters the source values on each 'rail' and
handles errors based on the given {@link ParallelFailureHandling} enumeration value.
<p>
Note that the same predicate may be called from multiple threads concurrently.
<p>History: 2.0.8 - experimental
@param predicate the function returning true to keep a value or false to drop a value
@param errorHandler the enumeration that defines how to handle errors thrown
from the predicate
@return the new ParallelFlowable instance
@since 2.2