code: @Override
  	public final void close(@NotNull Throwable e) {
  		if (isProcessComplete()) return;
  		processComplete = true;
  		doClose(e);
  		processCompletion.trySetException(e);
  		afterProcess(e);
  	}
docs: Closes this process if it is not completed yet.
  Executes {@link #doClose(Throwable)} and
  {@link #afterProcess(Throwable)}.
  
  @param e exception that is used to close process with