彩票网站维护会跑路吗,wordpress页面导航条,word调用wordpress,网络舆情分析报告范文fastdds 共享内存分两个部分#xff0c;一部分用于保存数据#xff0c;一部分用于通信。 fastrtps_“UUID”:共享内存包括又两部分数据#xff0c;BufferNode和segment_size, 用配置文件port_queue_capacity_指定BufferNode的数量#xff0c;segment_size用于保存实际传输的… fastdds 共享内存分两个部分一部分用于保存数据一部分用于通信。 fastrtps_“UUID”:共享内存包括又两部分数据BufferNode和segment_size, 用配置文件port_queue_capacity_指定BufferNode的数量segment_size用于保存实际传输的数据。 fastrtps_port“port_id”:用于控制发送的数据包含循环队列MultiProducerConsumerRingBuffer,队列中包含共享内存Node成员共享内存Cell[port_queue_capacity_]数组。
当发送数据时首先在segment_size中申请内存申请BufferNode用于保存申请offset、size、引用计数拷贝到segment里生成SharedMemManager::Buffer buffer对象。 然后找到对应port调用try_push函数并转换成BufferDescriptorpush到RingBuffer中。
数据接收会打开OpenInputChanenl打开多个port接收数据。并保存到input_channels_的vector中每个port启动单独线程等待从MultiProducerConsumerRingBuffer队列中pop数据。