@WorkerThread
    public static <C extends IConnector> SearchResult parallelCombineActive(
            @Nullable final SearchResult initial, final Collection<C> connectors, final Function<C, SearchResult> func) {

        return AndroidRxUtils.executeParallelThenCombine(connectors, conn -> conn.isActive() ? func.apply(conn) : null,
            initial == null ? new SearchResult() : initial, (searchResult, searchResult2) -> {
                searchResult.addSearchResult(searchResult2);
                return searchResult;
            });
    }
execute the given connector request in parallel on all active connectors

@param initial    optional initial SearchResult. If given, new results are added to this, otherwise a new one is created
@param connectors connectors to be considered in request
@param func       connector request
main/src/main/java/cgeo/geocaching/SearchResult.java