code: def _SetSocketTimeouts(self):
      
      # Note that timeout must be an integer value. If timeout is a float
      # it appears that zmq will not enforce the timeout.
      timeout = int(self.timeout_seconds * 1000)
      receive_timeout = min(
          self._ZMQ_SOCKET_RECEIVE_TIMEOUT_MILLISECONDS, timeout)
      send_timeout = min(self._ZMQ_SOCKET_SEND_TIMEOUT_MILLISECONDS, timeout)
  
      self._zmq_socket.setsockopt(zmq.RCVTIMEO, receive_timeout)
      self._zmq_socket.setsockopt(zmq.SNDTIMEO, send_timeout)
docs: Sets the timeouts for socket send and receive.