ROS_Kinetic_11 ROS程序基础Eclipse_C++(二) 编写简单的Service和Client (C++): http://wiki.ros.org/cn/ROS/Tutorials/WritingServiceClient%28c%2B%2B%29 上节程序测试以及Python教程可以参考: http://wiki.ros.org/cn/ROS/Tutorials/ExaminingPublisherSubscriber http://wiki.ros.org/cn/ROS/…
ROS_Kinetic_12 ROS程序基础Eclipse_C++(三)usb camera 软件包下载地址:https://github.com/bosch-ros-pkg/usb_cam 下载后,放到catkin_ws中src下:在Eclipse中编译: 注意,其中"pixel_format",如果编译后不能正常启动节点,需要修改mjpeg为yuyv. 编译完成后,启动节点:…
ROS_Kinetic_10 ROS程序基础Eclipse_C++(一) 编写简单的消息发布器和订阅器 (C++) http://wiki.ros.org/cn/ROS/Tutorials/WritingPublisherSubscriber%28c%2B%2B%29 这里简单用Eclipse实现一下. 首相将talker.cpp和listener.cpp复制到hello_kinetic/src目录下: 然后修改CMakeLists.txt:加入下列代码: ## Build talker and…
2.3 volatile 与 Java 内存模型(JMM) volatile对于保证操作的原子性是由非常大的帮助的(可见性).但是需要注意的是,volatile并不能代替锁,它也无法保证一些复合操作的原子性.比如下面的例子,通过volatile是无法保证i++的原子性操 作的: static volatile int i = 0; public static class PlusTask implements Runable { @Override public void run() { for…
使用宏实现max 注意括号在宏内的使用 #define MAX(x, y) ( ( (x) > (y) ) ? (x) : (y) ) 宏参数连接 a##e##b 转化为字符串 #a const const int* a; 左侧,修饰变量 int* const a;右侧,修饰指针 const 与宏的区别 #define 预处理器将宏变为代码,属于代码段. const 有类型,在编译阶段会有类型检查,和其他变量一样可以被调用.传递.属于数据段. const在C++的作用(按照应用情景分别介绍) 定…
Java并行程序基础 一.线程的生命周期 其中blocked和waiting的区别: 作者:赵老师链接:https://www.zhihu.com/question/27654579/answer/128050125来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 假设t1,t2先后两个线程,都执行如下代码: synchronized(Obj) { Obj.wait(); } t1先进,最后在Obj.wait()下卡住,这时java管t1的状态waitting状态t…
JAVA并行程序基础二 线程组 当一个系统中,如果线程较多并且功能分配比较明确,可以将相同功能的线程放入同一个线程组里. activeCount()可获得活动线程的总数,由于线程是动态的只能获取一个估计值. stop()可以停止当前线程组里的所有线程,但会遇到与Thread.stop()相同的问题,尽量不用. 守护线程 守护线程是系统的守护者,在后台默默地完成系统性的服务,如垃圾回收线程,JIT线程.与之对应的是用户线程,用户线程可以看做系统的工作线程,当系统工作线程全部执行完毕,那么整个系统将…
ROS入门笔记(二):ROS安装与环境配置及卸载(重点) [TOC] 1 ROS安装步骤 1.1 ROS版本 ROS目前只支持在Linux系统上安装部署, 它的首选开发平台是Ubuntu. 发布时间 ROS版本 Ubuntu版本 2017.5 Lunar Loggerhead Ubuntu 17.04 2016.5 Kinetic Kame Ubuntu 16.04 2015.5 Jade Turtle Ubuntu 15.04 2014.7 Indigo lgloo Ubuntu 14.04…
[C++自我精讲]基础系列二 const 0 前言 分三部分:const用法.const和#define比较.const作用. 1 const用法 const常量:const可以用来定义常量,不可改变,const常量在定义时必须初始化(extern修饰时是特例). //const常量 ; extern const int Number; const指针: 1)const出现在*号左边,表示被指物是常量(不可以改变):注意:const写在类型之前和写在类型之后且*号之前是一样的. 2)const出…
Java语言基础(二) Java关键字 Java关键字比较多,我就不列举出来了,只记录一些常用的小知识点: ①Java的关键字只有小写. ②then.sizeof都不是Java的关键字,熟悉C++的程序员一定要注意. ③大写的NULL不是java的关键字. ④标识符java不是关键字,要小心注意. ⑤String只是一个类不是关键字.…