mirror of
https://github.com/zeromq/libzmq.git
synced 2025-03-09 15:26:04 +00:00
Increase size of zmq_msg_t to 64 bytes
Increasing it would have at least two benefits - * More messages would be 'VSM' messages, so it would reduce allocation overhead a bit. * Remove any chance of false sharing of things that are, by design, pushed by value onto a ypipe_t<msg_t> which is shared between two threads. The only downside I see is slightly increased memory consumption on memory constrained applications. - Full discussion of this rationale is part of issue #1295
This commit is contained in:
parent
a55005feb1
commit
90194036bf
@ -195,7 +195,7 @@ ZMQ_EXPORT int zmq_ctx_destroy (void *context);
|
||||
/* 0MQ message definition. */
|
||||
/******************************************************************************/
|
||||
|
||||
typedef struct zmq_msg_t {unsigned char _ [48];} zmq_msg_t;
|
||||
typedef struct zmq_msg_t {unsigned char _ [64];} zmq_msg_t;
|
||||
|
||||
typedef void (zmq_free_fn) (void *data, void *hint);
|
||||
|
||||
|
@ -92,7 +92,7 @@ namespace zmq
|
||||
|
||||
// Size in bytes of the largest message that is still copied around
|
||||
// rather than being reference-counted.
|
||||
enum { msg_t_size = 48 };
|
||||
enum { msg_t_size = 64 };
|
||||
enum { max_vsm_size = msg_t_size - (8 + sizeof (metadata_t *) + 3) };
|
||||
|
||||
// Shared message buffer. Message data are either allocated in one
|
||||
|
Loading…
x
Reference in New Issue
Block a user