code: @Override
  	public ISynchronizationPoint<Exception> start() {
  		SynchronizationPoint<Exception> sp = new SynchronizationPoint<>();
  		io.canStartReading().listenAsync(new Task.Cpu.FromRunnable(() -> {
  			try {
  				Starter start = new Starter(io, defaultEncoding, charactersBuffersSize, maxBuffers);
  				stream = start.start();
  				next().listenInline(sp);
  			} catch (Exception e) {
  				sp.error(e);
  			}
  		}, "Start parsing XML", io.getPriority()), true);
  		return sp;
  	}
docs: /* Public methods