ZeroMQ接口函数之 :zmq_msg_init_data - 从一个指定的存储空间中初始化一个ZMQ消息对象的数据
ZeroMQ 官方地址 :http://api.zeromq.org/4-1:zmq_msg_init_data
zmq_msg_init_data(3) ØMQ Manual - ØMQ/3.2.5
Name
zmq_msg_init_data - 从一个指定的存储空间中初始化一个ZMQ消息对象的数据
Synopsis
typedef void (zmq_free_fn) (void *data, void *hint);
int zmq_msg_init_data (zmq_msg_t *msg, void *data, size_t size, zmq_free_fn *ffn,
void *hint);
Description
zmq_msg_init_data()函数会用data参数和size参数指定的数据对msg参数指定的ZMQ消息对象的内容进行初始化。ZMQ不会执行拷贝操作,并且ZMQ会取得指定数据的拥有权。
如果提供了回收功能函数ffn,ffn将会在data数据不再使用的时候被ZMQ调用一次,ZMQ会将zmq_msg_init_data()函数中的参数data和hint参数传递给ffn函数。
永远不要直接对zmq_msg_t对象进行直接操作,而是要使用zmq_msg函数族进行操作。
zmq_msg_init()、zmq_msg_init_data()和zmq_msg_init_size()这三个函数是互斥的。永远不要把一个zmq_msg_t对象初始化两次。
Return value
函数zmq_msg_init_data()执行成功会返回0。否则返回 -1,并且设置errno的值为下列指定的值。
Errors
ENOMEM
存储空间不足。
Example
使用一个指定的存储空间对ZMQ消息对象进行初始化。
void my_free (void *data, void *hint)
{
free (data);
}
/* ... */
void *data = malloc ();
assert (data);
memcpy (data, "ABCDEF", );
zmq_msg_t msg;
rc = zmq_msg_init_data (&msg, data, , my_free, NULL); assert (rc == );
See also
zmq_msg_init_size(3) zmq_msg_init(3) zmq_msg_close(3) zmq_msg_data(3) zmq_msg_size(3) zmq(7)
Authors
This ØMQ manual page was written by Martin Sustrik <sustrik@250bpm.com> and Martin Lucina <mato@kotelna.sk>.
Web site design and content is copyright (c) 2007-2012 iMatix Corporation. Contact us for professional support. Site content licensed under the Creative Commons Attribution-Share Alike 3.0 License. ØMQ is copyright (c) Copyright (c) 2007-2012 iMatix Corporation and Contributors. ØMQ is free software licensed under the LGPL. ØMQ, ZeroMQ, and 0MQ are trademarks of iMatix Corporation. Terms of Use — Privacy
Policy
更多 ZeroMQ API :http://www.cnblogs.com/fengbohello/p/4230135.html
翻译:风波
mail : fengbohello@qq.com
最新文章
- [转]利用URLConnection来发送POST和GET请求
- Python_猜大小
- html基础二
- WCF第二天
- 获取用户ip接口
- [Audio processing] Harmonic change detection function (HCDF)
- 【FAQ】SpingMVC实现集合參数(Could not instantiate bean class [java.util.List])
- kill命令";-1";这个参数到底是杀进程还是reload?(转)
- Linux关机命令详解
- linux tcp重传多会导致软中断在各个核很不均匀么?
- 关于Android自定义view 你所需要知道的基本函数
- cookie的增删改查函数
- python 字符串转16进制函数
- Springboot访问静态资源
- 从零开始学安全(二十六)●利用Nmap目标的本版进行探测
- Keras查看model weights .h5 文件的内容
- MysqlHelper使用反射机制智能推算数据类型以及属性名称
- java细节问题
- hdu 3397 线段树
- php面向对象(OOP)编程完整教程
热门文章
- Dijkstra算法
- tyvj1193 括号序列
- [Hadoop] 在Ubuntu系统上一步步搭建Hadoop(单机模式)
- LPC1768/1769之CAN控制器概述(附库函数下载地址)
- 常用的Firefox浏览器插件、Chrome浏览器插件收藏
- windows系统和ubuntu虚拟机之间文件共享——samba
- 十一. 一步步破解JEB 2.0demo版一
- [正则表达式]PCRE反向分组引用
- ACM/ICPC 之 ACM计算机工厂-EK算法(POJ3436)
- 创建GitHub博客