code: def _recv_loop(self):
          
          while True:
              try:
                  data = self._socket.recv(4096)
                  self._ibuffer += data
                  while '\r\n' in self._ibuffer:
                      line, self._ibuffer = self._ibuffer.split('\r\n', 1)
                      self.iqueue.put(line)
              except Exception:
                  break
docs: Waits for data forever and feeds the input queue.