![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
冰羚
文章平均质量分 70
liu-yonggang
不积跬步无以至千里,不积小流无以成江海
展开
-
iceoryx(冰羚)-共享内存数据传输
此外,它还提供了offer-stopOffer API,用于控制发布者端口是否可被发现用于订阅服务器端口。此外,它还提供了订阅/取消订阅API,控制订阅端口是否应尝试订阅匹配的发布端口。上面的操作都是在共享内存中,发布进程拿到PublisherPortData对象,转换成PublisherPortUser对象,进行数据发送。订阅进程拿到SubscriberPortData对象,转换成SubscriberPortUser对象,进行数据发送。原创 2023-12-03 17:18:12 · 640 阅读 · 0 评论 -
iceoryx(冰羚)-publisher注册RouDi进程
IPC通信支持socket和管道,IpcInterfaceUser ->RouDi进程的socket, IpcInterfaceCreator接收RouDi进程的消息socket。1、发UserApp启动,发布REG消息过程。原创 2023-12-02 10:56:46 · 559 阅读 · 0 评论 -
iceoryx(冰羚)-进程间消息同步
iceoryx进程间消息同步,是用socket或管道实现的,定义在iceoryx\iceoryx_posh\include\iceoryx_posh\internal\runtime\ipc_interface_base.hpp消息类型定义具体消息格式原创 2023-12-02 11:18:57 · 668 阅读 · 0 评论 -
iceoryx(冰羚)-共享内存分配
MemoryProvider::create()创建共享内存,先计算所有memoryblock size的总数,在创建共享内存,然后再用内存分配器BumpAllocator分配各个MemoryBlock,并用m_memory记录开始地址。m_introspectionMemPoolBlock 提供性能参数内存块,默认10,为introspection工具提供数据源.它包含。将m_portPoolBlock加入到m_defaultMemory.m_managementShm。原创 2023-12-01 14:08:05 · 1352 阅读 · 0 评论 -
iceoryx(冰羚)-简介
RouDi是Routing and Discovery的缩写。RouDi负责通信设置,但实际上并不参与发布者与订阅者或客户端与服务器之间的通信。鲁迪可以被认为是iceoryx的总机操作员。它的另一个主要任务是设置共享内存,应用程序使用共享内存交换有效负载数据。RouDi有时被称为守护进程,它管理共享内存并负责服务发现,即使订阅者/客户端能够找到发布者/服务器提供的主题。它还跟踪所有已初始化运行时的应用程序,从而能够创建发布者、订阅者、服务器或客户端。它为应用程序查询此信息提供了便利。原创 2023-11-15 20:47:36 · 1295 阅读 · 2 评论 -
iceoryx(冰羚)-通信中间件解析
iceoryx(冰羚)-ipc消息通信][iceoryx(冰羚)-共享内存实现]原创 2023-11-15 20:23:49 · 1160 阅读 · 0 评论 -
iceoryx(冰羚)-Listener设计
Listener是除WaitSet之外实现推送方法来检测特定事件并对其作出反应。监听器为用户提供了附加具有相应事件和回调的对象的能力。每当对象接收到指定的事件时,就会在Listener后台线程中调用相应的回调作为响应。WaitSet的两个关键区别是侦听器是事件驱动的而不是像WaitSet和Listener创建的那样由事件和状态驱动一个单独的后台线程,在该线程中执行事件回调,而在WaitSet中用户必须显式调用事件回调。##术语由附加对象用于通知Listener/WaitSet事件发生。原创 2023-11-14 20:39:22 · 328 阅读 · 1 评论 -
iceoryx(冰羚)-Architecture
本文概述了Eclipseiceoryx体系结构,并解释了它的基本原理。原创 2023-11-15 20:16:44 · 682 阅读 · 0 评论 -
iceoryx(冰羚)-iceoryx_examples/callback
侦听器是线程安全的,可以不受限制地使用。但是要注意,所有提供的回调都是在侦听器的后台线程中同时执行的。如果你访问这个回调中的结构,你必须确保你是唯一一个访问它的人,或者用“std::mutex”之类的保护来访问它。原创 2023-11-15 10:19:32 · 370 阅读 · 0 评论 -
iceoryx(冰羚)-Service Discovery
IPC通道(例如消息队列或UNIX域套接字)上的服务发现是不可执行的,因为传输的数据较大,这可能会导致多个帧的传输。如果发现大量高频服务,例如在启动时,IPC通道可能会成为瓶颈。原创 2023-11-14 21:15:23 · 415 阅读 · 0 评论