'wrap send_multipart to prevent state_changed on each partial send'

def send_multipart(self, *args, **kwargs):

    self.__in_send_multipart = True
    try:
        msg = super(_Socket, self).send_multipart(*args, **kwargs)
    finally:
        self.__in_send_multipart = False
        self.__state_changed()
    return msg
