Hi Emmanuel, > Do you confirm my understanding of this problem? > If yes, how is it possible to send small message which will be received > aligned in a 4 bytes boundary?
This can't be done in a generic way. When sending messages initialised using zmq_msg_init_data() via inproc, you get the same buffer that was sent by the sender. I.e. if the sender aligned the buffer in a special way, that's what you'll get. In general, it's advisable to parse the messages in alignment-independent manner. 0MQ itself does so for its internal data, see src/wire.hpp. That'll make your application more portable. However, if this is considered an useful optimisation. zmq_msg_t (or rather it's equivalent in 3.0) could be restructured in such a way that the buffer is located at the beginning of the structure. That way it will be aligned in the same way the structures are (see c specs). Note though, that this will not be a trivial exercise as you are going to mess with compiler's standard way of aligning structure members for which there is no standard means in the language. Martin _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
