public long skip(long cnt) throws IOException {try {beginRead();return super.skip(cnt);} catch (InterruptedIOException e) {throw readTimedOut(e);} finally {endRead();}}
public override long Skip(long cnt){try{BeginRead();return base.Skip(cnt);}catch (ThreadInterruptedException){throw ReadTimedOut();}finally{EndRead();}}