code: public static <K, V, R extends MutableMultimap<K, V>> MutableMultimap<K, V> groupBy(
              Iterable<V> iterable,
              Function<? super V, ? extends K> function,
              R concurrentMultimap,
              int batchSize)
      {
          return FJIterate.groupBy(iterable, function, concurrentMultimap, batchSize, FJIterate.FORK_JOIN_POOL);
      }
docs: Same effect as {@link Iterate#groupBy(Iterable, Function)},
  but executed in parallel batches, and writing output into a SynchronizedPutFastListMultimap.