code: def try_recv(self):
          
          try:
              lenstr = self.sock.recv(4, socket.MSG_DONTWAIT)
          except socket.error:
              return None
          if len(lenstr) < 4:
              raise EOFError("Socket closed")
          length = struct.unpack("<I", lenstr)[0]
          return self._get_next_obj(length)
docs: Return None immediately if nothing is waiting