ipc-pubsub:简化的POSIX共享内存上的IPC,带有PublisherSubscriber接口

时间:2024-03-06 09:32:34
【文件属性】:

文件名称:ipc-pubsub:简化的POSIX共享内存上的IPC,带有PublisherSubscriber接口

文件大小:38KB

文件格式:ZIP

更新时间:2024-03-06 09:32:34

C++

ipc-pubsub 具有发布者/订阅者接口的POSIX共享内存上的简化IPC。 设计须知 思想 Unix / Posix队列需要调整以具有合理数量的可用文件描述符。 我希望不要这样。 UDP需要正确的网络设置,这似乎并不理想 信号量不允许任何数据,这意味着必须通过复杂的共享内存结构(包括有关可用节点的元数据)发送所有实际有效载荷 管道的状态有些复杂,可能导致虚假阻塞管道中的数据过多 设计 单个共享内存对象保留有索引和运行中消息 添加节点 写锁定元数据文件 读取当前的元数据 将节点信息附加到数据 写元数据 解锁元数据文件 发送信息 (可选)检索并使用shm缓冲区:: Allocate()-> ShmBuffer(); Send(ShmBuffer)或Send(data,len) 写锁定元数据文件 读取当前的元数据 附加到适当的飞行队列 解锁元数据文件 sem_up()在所有读者上


【文件预览】:
ipc-pubsub-main
----BUILD(0B)
----bazel()
--------BUILD(0B)
--------external()
----LICENSE(11KB)
----src()
--------ponger.cc(704B)
--------unix_dgram_writer.cc(4KB)
--------IPCNode.cc(9KB)
--------pinger.cc(876B)
--------UDSServer.h(1KB)
--------BUILD(3KB)
--------UDSClient.cc(5KB)
--------ipc_node_test.cc(177B)
--------UDSServer.cc(6KB)
--------unix_dgram_reader.cc(5KB)
--------IPCNode.h(2KB)
--------TopologyServer.h(1KB)
--------topology_node.cc(1KB)
--------TopologyManager.cc(9KB)
--------Utils.cc(973B)
--------TopologyManager.h(3KB)
--------Utils.h(355B)
--------test_topology_manager.cc(5KB)
--------standalone_subscriber.cc(5KB)
--------standalone_publisher.cc(5KB)
--------UDSClient.h(1KB)
--------TopologyServer.cc(6KB)
----.clang-format(5KB)
----.bazelrc(640B)
----protos()
--------BUILD(422B)
--------index.proto(1KB)
----README.md(1KB)
----WORKSPACE(2KB)

网友评论