首页 > 其他 > 详细

CodeBlocks及LCM应用

时间:2017-01-05 23:45:40      阅读:364      评论:0      收藏:0      [点我收藏+]

 

以下是在开发过程中遇到的一些细节点:

1)called after throwing an instance of std::bad_alloc

此问题是由于publish(data),当中data赋值的问题导致的。

 

2)在用GDB调试CodeBlocks的时候,遇到权限不允许的情况。

warning: GDB: Failed to set controlling terminal: Operation not permitted

此问题需要通过设置来解决:

参考资料: http://blog.csdn.net/ct2917282881/article/details/7447527

技术分享

 

3)调试过程中codeblocks如何查看变量的值

参考资料: http://wiki.codeblocks.org/index.php?title=Debugging_with_Code::Blocks

我们需要打开debug windows 下面的 watch 对话框才可以。

 

4)如何设计局域网内LCM通信

对于LCM来说,其实就是一个基于UDP组播的一个实例而已,并不是什么新的东西。当我们有两台主机的时候,我们需要约定一个

多播的地址,只有地址约定好了以后就可以进行通信了。

技术分享

 

5)当有多个subcribe的时候,如何保证数据是线程安全的。

首先在ROS里面,各个订阅的MSG都是线程安全的。

但是在LCM里面,文档当中没有提及到,所以,我们暂且认为是线程非安全的,此时需要加入互斥变量来保证线程安全。

技术分享技术分享

当然,这里也可以引用其他技术来实现。

 

CodeBlocks及LCM应用

原文:http://www.cnblogs.com/zhuxuekui/p/6254408.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!