软实时系统开发的应用程序,其默认的消息传递模型允许下降的消息,以尽量减少新邮件的延迟。
LCM是一组库和工具的消息传递和数据编组,针对高带宽和低延迟的实时系统中是至关重要的。
它提供了一个发布/订阅消息传递模型和自动代码生成的神器出山:www.shenqi73.com编组/解组绑定的应用程序在多种编程语言。
它最初是由麻省理工学院DARPA城市挑战赛队的消息传递系统的设计和使用。
LCM被设计为通过一个专用的本地区域网络连接的紧密耦合的系统。它不打算在互联网上的消息传递。
LCM已发展为软实时系统:它的默认消息模型允许下降的消息,以尽量减少新邮件的延迟。
这里是“LCM”的一些主要特点:
·低延时的进程间通信
·高效使用UDP多播的广播机制
·提供类型
安全的信息编组,自动检测大多数类型的错误(如不同模块之间的版本不匹配)
·用户友好的记录和回放
·基本上是无限的数据包的大小
·不集中的“数据库”或“枢纽” - 同行直接沟通
·无守护进程
·支持C,C + +,Java中的Python,MATLAB,和C#
要求:
·
GLib的2.0或更高版本 ·
的Java 1.5或更高版本 此版本中的新功能:
此版本改变了C + + API,增加了一些功能LCM-logplayer贵的,并修复了一些错误
LCM-C:
·添加新的宏LCM_MAJOR_VERSION,LCM_MINOR_VERSION,LCM_MICRO_VERSION,检查LCM的版本从C / C + +
LCM-C + +:
·重命名LCM ::的fileno()来LCM :: getFileno()。的fileno被实现为一个宏在某些平台上,从而有效地保留关键字
LCM根:
·C + +
·不要试图动态地调整固定大小的数组(重问题#42)
巨蟒
·修正错误的解码多变量数组
LCM-logplayer-GUI:
·添加命令行参数
·开始logplayer的日志暂停
·正在播放默认情况下,筛选出特定的渠道