# File lib/redis/connection/ruby.rb, line 81
      def _read_from_socket(nbytes)

        begin
          read_nonblock(nbytes)

        rescue *NBIO_READ_EXCEPTIONS
          if IO.select([self], nil, nil, @timeout)
            retry
          else
            raise Redis::TimeoutError
          end
        rescue *NBIO_WRITE_EXCEPTIONS
          if IO.select(nil, [self], nil, @timeout)
            retry
          else
            raise Redis::TimeoutError
          end
        end

      rescue EOFError
        raise Errno::ECONNRESET
      end