> On Mar 28, 2017, at 7:57 AM, Stephan Opfer <[email protected]> wrote:
> 
> Hi,
> 
> I would like to do what is described in this tutorial here: 
> http://zeromq.org/blog:zero-copy
> 
> But, I don't like to transfer the ownership to ZMQ, because it will delete 
> the data when the message is sent.
> 
> My application is more like this:
> 
> Several autonomous robots inform each other from each other from time to time 
> about the results of some calculuations, e.g., path planning results.
> 
> These results are created for further processing and need to be kept in the 
> ownership of the process itself. They can be send with zero-copy, because the 
> wont be altered anymore, but should not be deleted.
> 
> Any suggestions?

I would suggest passing a delete function to zeromq that is a no-op or just 
sets a flag that your process can retrieve. There is no real “transfer of 
ownership” happening within the library. The transfer that the documentation 
talks about is the *responsibility* to free the memory buffer once it has been 
sent by zeromq.

If your robot processes need to continue owning the buffer then just pass a 
function to zeromq that, when called, will set a flag in your robot process 
that indicates zeromq has finished with the buffer. Then your library can reuse 
the memory, deallocate it, or whatever.
_______________________________________________
zeromq-dev mailing list
[email protected]
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to