[zeromq-dev] question about message buffer
Mohit Jaggi
mohitjaggi at gmail.com
Mon Mar 4 08:34:52 CET 2013
Hi,
I am a little confused about how messages and buffers are handled in zmq.
In the following example, valgrind finds a message leak for 'm'.
1) Should I call delete for 'm' after the send?
2) zmq will keep the buffer(data) but free memory for 'm' if I do this?
3) What about 'topic'? It is on stack and data is small, so I guess it uses
the vsm area to store the message?
4) Will send for 'topic' make a copy of the data then?
Mohit.
string buf;
myObject.SerializeToString(&buf);
message_t m = new message_t(buf.size());
memcpy((*void**) m.data(), buf.c_str(), buf.size());
string topic(string("X") + string("Y") + string("Z"));
publisher->send(topic.c_str(), topic.size(), ZMQ_SNDMORE); //topic
publisher->send(m); //data
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20130303/85797440/attachment.htm>
More information about the zeromq-dev
mailing list