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一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
21天前
|
消息中间件 Unix Linux
【ZMQ polling机制】ZMQ异步接收机制以及与epoll/select的对比分析
【ZMQ polling机制】ZMQ异步接收机制以及与epoll/select的对比分析
49 0
|
5月前
|
监控
在Netty底层监控消息发送到Socket的时间
在Netty底层监控消息发送到Socket的时间
37 0
|
消息中间件 负载均衡 网络协议
ZMQ/ZeroMQ的三种消息模式
ZMQ/ZeroMQ的三种消息模式
ZMQ/ZeroMQ的三种消息模式
|
10月前
|
消息中间件 算法 Unix
进程间通信—管道,共享内存,消息队列,信号量
本文讲述了几种进程间通信的方式,包括具有亲缘关系进程使用的匿名管道,命名管道。systemV中共享内存,消息队列,还浅浅介绍了信号量概念,还有IPC资源之间的关系
11542 0
进程间通信—管道,共享内存,消息队列,信号量
|
Java Android开发
Binder机制中的收发消息及线程池
在阅读《深入理解android内核设计思想》的有关Binder章节的时候,发现书中有部分问题没有很清晰的描述清楚,所以这篇文章主要是针对收发消息的过程和线程池这两个知识点详细展开一下。注意本篇文章并不是介绍Binder机制,而是针对它的两个小细节深入探讨一下,所以建议大家先详细的阅读《深入理解android内核设计思想》中有关Binder章节后对照阅读本篇文章。
308 0