摘要: linux 单调时间实现原理,Linux系统下的单调时间函数_半夏256的博客-CSDN博客 一、编写linux下应用程序的时候,有时候会用到高精度相对时间的概念,比如间隔100ms。那么应该使用哪个时间函数更准确呢? 1、time 该函数返回的是自1970年以来的秒数,显然精度不够,不能使用 2、 阅读全文
posted @ 2022-05-06 15:09 miaorn 阅读(815) 评论(0) 推荐(0) 编辑
摘要: ros_qt工程打包deb格式 介绍 ros_qt工程完成后,经常需要部署在其他电脑,配置环境非常繁琐,将工程的可执行文件打包为deb格式,即可以直接安装运行。以下以工程record_bag为例。 文件目录结构 步骤 新建文件夹如文件目录结构图,将ros工程编译好的可执行文件(record_bag: 阅读全文
posted @ 2022-04-24 17:38 miaorn 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 进程调度 调度的发生有两种方式 1、主动式 在内核中直接调用schedule()。当进程需要等待资源等而暂时停止运行时, 会把状态置于挂起(睡眠),并主动请求调度,让出CPU。主动放弃cpu例: current->state = TASK_INTERRUPTIBLE; schedule(); 2、被 阅读全文
posted @ 2021-12-07 21:13 miaorn 阅读(605) 评论(0) 推荐(0) 编辑
摘要: 装“c/c++”插件到vscode左边栏的EXTENSIONS中,搜索“C/C++”并安装 生成c_cpp_properties.jsonvscode自身配置文件全部在./.vscode/目录下 但是,在最开始对自己新建的目录和文件进行编辑后,文件夹里面是没有.vscode目录的 同时,我们的cpp 阅读全文
posted @ 2021-12-04 14:29 miaorn 阅读(810) 评论(0) 推荐(0) 编辑
摘要: 1、安装 terminator,$ sudo apt-get install terminator 2、Ctrl+ Alt + T 默认启动的是terminator;如果想换换默认的终端,还需以下一步 3、接下来,安装dconf-tools,这个是设置默认终端的必须 sudo apt-get ins 阅读全文
posted @ 2021-08-30 15:45 miaorn 阅读(896) 评论(0) 推荐(0) 编辑
摘要: 在软件组织中,责任划分不明确,使得继承会使得子类随着需求变化而急剧膨胀 以下这种消息的基类进行扩展,出现pc和mobile并出现了lite和prefect版本其中的功能(方法)实现代码大量重复 将基类分成两部分抽象部分(业务功能)和实现部分(平台实现) bridge1.cpp class Messa 阅读全文
posted @ 2021-02-10 22:25 miaorn 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 在软件组件的设计中,如果责任划分的不清楚,使用继承得到的结果往往 是随着需求的变化, 子类极具膨胀,同时充斥这重复代码 由继承为类型引入的静态特质,缺乏灵活性,随着子类的增多,各种组合导致子类膨胀 如下的对流的操作,扩展出文件流,网络流,内存流。以及扩展的加密及缓存导致代码膨胀 decorator1 阅读全文
posted @ 2021-02-09 22:47 miaorn 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式:流程固定,但构成流程的每个步骤可以子类化多态;策略模式:消除平行结构,将其拆成多个策略算法类,由调用者选择 软件构建过程中有许多算法,但在算法实现时经常改变,编写在程序里会很麻烦 例如:纳税的计算,在写代码时需计算的国家数量较少,在之后会增加, 以如下这种if,else的方式确实可以实 阅读全文
posted @ 2021-02-09 22:18 miaorn 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 在软件实现过程中,一个对象的状态发生改变所依赖的对象都须得到通知需要通知,但这种依赖不能过于紧密,需要抵御变化, 通过实现进度条的伪码来实现 该MainForm1.cpp中通过实现具体的进度条代码,来达到需求,如果需求改变,则需要在源码中所需位置依次增加所需代码 MainForm1.cpp 1 cl 阅读全文
posted @ 2021-02-07 23:53 miaorn 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 模板方法Template Method模式 在稳定的整体操作结构中,子步骤可以进行变化来满足需求 template_lin.cpp 1 //程序库开发人员 2 class Library{ 3 4 public: 5 void Step1(){ 6 //... 7 } 8 9 void Step3( 阅读全文
posted @ 2021-01-31 23:17 miaorn 阅读(63) 评论(0) 推荐(0) 编辑