0
0
mirror of https://github.com/zeromq/libzmq.git synced 2024-12-31 01:43:02 +08:00
libzmq/doc/zmq_msg_copy.txt

73 lines
1.7 KiB
Plaintext
Raw Normal View History

2010-02-10 16:18:46 +01:00
zmq_msg_copy(3)
===============
NAME
----
2010-03-09 18:47:31 +01:00
zmq_msg_copy - copy content of a message to another message
2010-02-10 16:18:46 +01:00
SYNOPSIS
--------
2010-03-09 18:47:31 +01:00
*int zmq_msg_copy (zmq_msg_t '*dest', zmq_msg_t '*src');*
2010-02-10 16:18:46 +01:00
DESCRIPTION
-----------
2010-03-09 18:47:31 +01:00
The _zmq_msg_copy()_ function shall copy the message object referenced by 'src'
to the message object referenced by 'dest'. The original content of 'dest', if
2014-01-24 11:41:28 -06:00
any, shall be released. You must initialize 'dest' before copying to it.
2010-02-10 16:18:46 +01:00
2010-03-09 18:47:31 +01:00
CAUTION: The implementation may choose not to physically copy the message
content, rather to share the underlying buffer between 'src' and 'dest'. Avoid
modifying message content after a message has been copied with
_zmq_msg_copy()_, doing so can result in undefined behaviour. If what you need
is an actual hard copy, allocate a new message using _zmq_msg_init_size()_ and
copy the message content using _memcpy()_.
CAUTION: Never access 'zmq_msg_t' members directly, instead always use the
_zmq_msg_ family of functions.
2010-02-10 16:18:46 +01:00
RETURN VALUE
------------
2010-03-09 18:47:31 +01:00
The _zmq_msg_copy()_ function shall return zero if successful. Otherwise it
2010-03-10 12:19:39 +01:00
shall return `-1` and set 'errno' to one of the values defined below.
2010-02-10 16:18:46 +01:00
ERRORS
------
*EFAULT*::
Invalid message.
2010-02-10 16:18:46 +01:00
2014-01-24 11:41:28 -06:00
EXAMPLE
-------
.Copying a message
----
zmq_msg_t msg;
zmq_msg_init_size (&msg, 255);
memcpy (zmq_msg_data (&msg, "Hello, World", 12);
zmq_msg_t copy;
zmq_msg_init (&copy);
zmq_msg_copy (&copy, &msg);
...
zmq_msg_close (&copy);
zmq_msg_close (&msg);
----
2010-02-10 16:18:46 +01:00
SEE ALSO
--------
linkzmq:zmq_msg_move[3]
linkzmq:zmq_msg_init[3]
linkzmq:zmq_msg_init_size[3]
linkzmq:zmq_msg_init_data[3]
linkzmq:zmq_msg_close[3]
2010-03-09 18:47:31 +01:00
linkzmq:zmq[7]
2010-02-10 16:18:46 +01:00
AUTHORS
-------
This page was written by the 0MQ community. To make a change please
read the 0MQ Contribution Policy at <http://www.zeromq.org/docs:contributing>.