ØMQ Manual - ØMQ/4.2.2


zmq_msg_close - release ØMQ message


int zmq_msg_close (zmq_msg_t *msg);


The zmq_msg_close() function shall inform the ØMQ infrastructure that any resources associated with the message object referenced by msg are no longer required and may be released. Actual release of resources associated with the message object shall be postponed by ØMQ until all users of the message or underlying data buffer have indicated it is no longer required.

Applications should ensure that zmq_msg_close() is called once a message is no longer required, otherwise memory leaks may occur. Note that this is NOT necessary after a successful zmq_msg_send().

Never access zmq_msg_t members directly, instead always use the zmq_msg family of functions.

Return value

The zmq_msg_close() function shall return zero if successful. Otherwise it shall return -1 and set errno to one of the values defined below.


Invalid message.

See also

zmq_msg_init(3) zmq_msg_init_size(3) zmq_msg_init_data(3) zmq_msg_data(3) zmq_msg_size(3) zmq(7)


This page was written by the ØMQ community. To make a change please read the ØMQ Contribution Policy at