名称
zmq_msg_copy - 将消息内容复制到另一消息
概要
int zmq_msg_copy (zmq_msg_t '*dest', zmq_msg_t '*src');
说明
zmq_msg_copy() 函数应将由 'src' 引用的消息对象复制到由 'dest' 引用的消息对象。'dest' 原有的内容(如有)将被释放。在复制到 'dest' 之前,必须先对其进行初始化。
注意
|
实现可以选择不物理复制消息内容,而是让 'src' 和 'dest' 共享底层缓冲区。避免在使用 zmq_msg_copy() 复制消息后修改消息内容,这样做可能导致未定义行为。如果需要的是实际的硬拷贝(物理复制),可以使用 zmq_msg_init_buffer() 并包含消息内容来初始化新消息。 |
注意
|
切勿直接访问 'zmq_msg_t' 成员,而应始终使用 zmq_msg 系列函数。 |
返回值
zmq_msg_copy() 函数成功时应返回零。否则应返回 -1
并将 'errno' 设置为下列值之一。
错误
- EFAULT
-
无效的消息。
示例
复制消息
zmq_msg_t msg; zmq_msg_init_buffer (&msg, "Hello, World", 12); zmq_msg_t copy; zmq_msg_init (©); zmq_msg_copy (©, &msg); ... zmq_msg_close (©); zmq_msg_close (&msg);
另请参阅
作者
本页面由 0MQ 社区编写。要做出修改,请阅读 0MQ 贡献政策: https://zeromq.cn/how-to-contribute/。