mget (TokyoTyrant::RDB)

    # File tokyotyrant.rb, line 356
        def mget(recs)
          raise ArgumentError if !recs.is_a?(Hash)
          if !@sock
            @ecode = EINVALID
            return -1
          end
          rnum = 0
          sbuf = ""
          recs.each_pair do |key, value|
            key = _argstr(key)
            sbuf += [key.length].pack("N") + key
            rnum += 1
          end
          sbuf = [0xC8, 0x31, rnum].pack("CCN") + sbuf
          if !_send(sbuf)
            @ecode = ESEND
            return -1
          end
          code = _recvcode
          rnum = _recvint32
          if code == -1
            @ecode = ERECV
            return -1
          end
          if code != 0
            @ecode = ENOREC
            return -1
          end
          if rnum < 0
            @ecode = ERECV
            return -1
          end
          recs.clear
          for i in 1..rnum
            ksiz = _recvint32()
            vsiz = _recvint32()
            if ksiz < 0 || vsiz < 0
              @ecode = ERECV
              return -1
            end
            kbuf = _recv(ksiz)
            vbuf = _recv(vsiz)
            if !kbuf || !vbuf
              @ecode = ERECV
              return -1
            end
            recs[kbuf] = _retstr(vbuf)
          end
          return rnum
        end