ZeroMQ接口函数之 :zmq_inproc – ØMQ 本地进程内(线程间)传输方式

简介:

Name

zmq_inproc – ØMQ 本地进程内(线程间)传输方式

Synopsis

进程内传输方式意味着在共享ZMQ context的线程间通过内存方式传输数据。
在使用inproc方式进行传输时,不需要使用I/O线程。所以呢,如果你使用ZMQ context进行进程内消息传送,你可以初始化这个context的I/O线程为0。参见zmq_init(3)获得更多细节。

Addressing

一个ZMQ终结点包括transport://跟着一个address(例如:inproc://someaddress)。Transport指明了要使用的底层协议。address指明了要连接的传输地址。

对于进程内传输,传输方式是inproc,address的含义在下面进行定义。

  为一个socket分配一个地址

当使用zmq_bind()函数给一个socket分配一个本地地址的时候,终结点必须是一个任意的唯一字符串,用来创建一个文件。这个文件名必须是在与这个socket关联的ZMQ context上是唯一的,而且长度不能大于256字节。对于这个文件名的格式没有任何限制。

  连接一个socket

当使用zmq_connect()函数连接一个使用inproc传输方式的socket端时,终结点必须是一个唯一表示一个文件名的字符串,作为用来连接的文件名。这个文件名在被连接时,必须保证已经被相同context上的一个socket创建了。

Examples

  给一个socket分配一个本地地址

复制代码
//  Assign the in-process name "#1"
rc = zmq_bind(socket, "inproc://#1");
assert (rc == 0);
//  Assign the in-process name "my-endpoint"
rc = zmq_bind(socket, "inproc://my-endpoint");
assert (rc == 0);
复制代码

  连接一个socket

复制代码
//  Connect to the in-process name "#1"
rc = zmq_connect(socket, "inproc://#1");
assert (rc == 0);
//  Connect to the in-process name "my-endpoint"
rc = zmq_connect(socket, "inproc://my-endpoint");
assert (rc == 0);
复制代码

See also

zmq_bind(3)  zmq_connect(3)  zmq_ipc(7)  zmq_tcp(7)  zmq_pgm(7)  zmq(7)

Authors

This ØMQ manual page was written by Pieter Hintjens <ph@imatix.com>, 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

 


本文转自郝峰波博客园博客,原文链接:http://www.cnblogs.com/fengbohello/p/4328772.html,如需转载请自行联系原作者


相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
传感器 监控 安全
基于STM32的智能家居安防系统设计与实现
基于STM32的智能家居安防系统设计与实现
1722 1
|
监控 前端开发 Java
错误码如何设计才合理?
对于错误码的设计,不同的开发团队有不同的风格习惯。本文分享阿里文娱技术专家长统对于错误码的看法,希望从错误码使用的不同场景讨论得到一个合理的错误码规约,得到一个面向日志错误码标准和一个面向外部传递的错误码标准。
13271 3
错误码如何设计才合理?
|
SQL 存储 数据挖掘
Dremio架构分析
一.Dremio架构 Dremio是基于Apache calcite、Apache arrow和Apache parquet3个开源框架构建,结构其核心引擎Sabot,形成这款DaaS(Data-as-a-Service)数据即服务平台;整体体验风格与其公司开源的Apache Drill非常接近。
10691 0
|
11月前
|
人工智能 自然语言处理 算法
2025年最佳AIGC视频服务商推荐!
2025年权威发布:聚焦快消行业,深度测评TOP5 AIGC视频服务商。从集之互动的私有化部署与全栈赋能,到可灵、即梦、梦影、讯视在内容生成、创意互动与数据驱动上的突破,全面助力品牌实现高效创作、精准传播与用户共创,引领AI营销新趋势。
1607 0
|
存储 缓存 Java
释放C盘空间:释放Windows休眠文件和关闭虚拟内存
在 Windows 11 专业版中,可以通过以下步骤来释放休眠文件(Hibernate File),以释放磁盘空间。休眠文件是系统休眠(Hibernate)功能所需要的文件,它保存了系统的当前状态,以便在休眠状态下恢复。如果你不使用休眠功能,如果因为C盘空间不足,可以考虑释放这个文件来腾出磁盘空间。
29941 1
|
存储 数据采集 数据挖掘
TMDB电影数据分析(上)
TMDB电影数据分析(上)
846 0
|
前端开发 IDE Java
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
976 0
|
数据可视化 前端开发 JavaScript
基于python flask +pyecharts实现的气象数据可视化分析大屏
本文介绍了一个基于Python Flask和Pyecharts技术实现的气象数据可视化分析大屏,该系统通过图表展示气象数据,提供实时监测和数据分析功能,帮助用户和决策者进行有效应对措施的制定。
1021 1
|
消息中间件 网络协议
cppzmq入门
cppzmq入门
738 2
|
自然语言处理 Java 测试技术
使用PostMan请求阿里云通义千问大模型
本文介绍如果通过postman调用阿里云通义千问API,然后介绍如果使用多语言集成,最后介绍了快速使用postman压测创建的API请求。
5799 2