code: protected void throwIfError() throws IOException {
          if (_err != null) {
              _err.addSuppressed(new Throwable());
              if (_err instanceof IOException)
                  throw (IOException) _err;
              if (_err instanceof IllegalStateException)
                  throw (IllegalStateException) _err;
              throw new IllegalStateException(_err);
          }
      }
docs: Throws an exception if one has been latched.
  
  @throws IOException the exception (if present)