code: @CheckReturnValue
      @SchedulerSupport(SchedulerSupport.NONE)
      public final Disposable subscribe(final Action onComplete, final Consumer<? super Throwable> onError) {
          ObjectHelper.requireNonNull(onError, "onError is null");
          ObjectHelper.requireNonNull(onComplete, "onComplete is null");
  
          CallbackCompletableObserver observer = new CallbackCompletableObserver(onError, onComplete);
          subscribe(observer);
          return observer;
      }
docs: Subscribes to this Completable and calls back either the onError or onComplete functions.
  <p>
  <img width="640" height="352" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/Completable.subscribe.ff.png" alt="">
  <dl>
  <dt><b>Scheduler:</b></dt>
  <dd>{@code subscribe} does not operate by default on a particular {@link Scheduler}.</dd>
  </dl>
  @param onComplete the runnable that is called if the Completable completes normally
  @param onError the consumer that is called if this Completable emits an error
  @return the Disposable that can be used for disposing the subscription asynchronously
  @throws NullPointerException if either callback is null