09 2024 档案

摘要:前几天在B站上看到一个线程池的例子,用到了很多不熟的语法,于是把它记录下来,方便后续慢慢研究。 在windows下用vs2017编译测试过,C++14和C++17都能跑通。 直接上代码: ThreadPool.hpp: #ifndef __MY_THREAD_POOL_INCLUDE__ #defi 阅读全文
posted @ 2024-09-24 15:34 xcywt 阅读(41) 评论(0) 推荐(0) 编辑
摘要:C++标准库对条件变量有两套实现:std::condition_variable 和 std::condition_variable_any 。 这两个实现都包含在 <condition_variable> 头文件的声明中。 两者都需要与一个互斥量一起才能工作(互斥量是为了同步); 前者仅限于与 s 阅读全文
posted @ 2024-09-23 11:18 xcywt 阅读(21) 评论(0) 推荐(0) 编辑
摘要:背景: share_ptr已经很好用了,但是有一点share_ptr智能指针还是有内存泄露的情况,当两个对象相互使用一个shared_ptr成员变量指向对方,会造成循环引用,使引用计数失效,从而导致内存泄漏。 weak_ptr 是一种不控制对象生命周期的智能指针, 它指向一个 shared_ptr 阅读全文
posted @ 2024-09-19 11:10 xcywt 阅读(89) 评论(0) 推荐(0) 编辑
摘要:记录一些C++14的一些特性: 参考:https://github.com/0voice/cpp_new_features/blob/main/cpp_14/001_initializer_list_crbegin.cpp 函数返回值类型推导: C++14对函数返回类型推导规则做了优化: #incl 阅读全文
posted @ 2024-09-18 16:23 xcywt 阅读(20) 评论(0) 推荐(0) 编辑
摘要:记录一下使用过的C++11的一些特性,大致分为三部分:并发相关,智能指针相关,chrono。 并发相关: std::thread相关: #include <iostream> #include <thread> using namespace std; int main() { auto func 阅读全文
posted @ 2024-09-18 15:54 xcywt 阅读(6) 评论(0) 推荐(0) 编辑
摘要:参考:Ubuntu系统中本地编译并安装grpc的C++版本及测试 - 知乎 (zhihu.com) 安装依赖: # 这些可能都已经安装了 sudo apt-get install pkg-config autoconf automake libtool make g++ unzip # 下面的可能没 阅读全文
posted @ 2024-09-18 14:52 xcywt 阅读(267) 评论(0) 推荐(0) 编辑
摘要:记录一下这个工具,感觉还挺好用的。参考: 如何读懂火焰图? - 阮一峰的网络日志 (ruanyifeng.com) perf的基本使用方法-菜鸟笔记 (coonote.com) 使用 Perf 和火焰图分析 CPU 性能 | Senlin's Blog (senlinzhan.github.io) 阅读全文
posted @ 2024-09-18 14:37 xcywt 阅读(7) 评论(0) 推荐(0) 编辑
摘要:背景: 由于项目需要,把所有的proto文件放在了统一的文件夹中,为了方便更新以及加快编译速度,要把这个proto自动转成.cc .pb.h文件,再编译成so。 为此,写了个cmakelist.txt。 主要功能: 1)自动遍历指定目录下所有proto文件,调用ptotoc生成.cc文件,如下图:c 阅读全文
posted @ 2024-09-18 14:22 xcywt 阅读(99) 评论(0) 推荐(0) 编辑
摘要:完整的源代码包: # 安装依赖 sudo apt-get install git cmake doxygen graphviz build-essential zlib1g-dev sudo apt-get install libhdf5-dev libprotobuf-dev libprotoc- 阅读全文
posted @ 2024-09-18 10:30 xcywt 阅读(47) 评论(0) 推荐(0) 编辑
摘要:下载: git clone https://github.com/eclipse-ecal/ecal.git cd ecal git checkout v5.12.0 git submodule init # 这一步耗时会有点长,有些可能需要多次尝试才成功 # 若一直不成功,可以跳过,等cmake报 阅读全文
posted @ 2024-09-14 14:38 xcywt 阅读(86) 评论(0) 推荐(0) 编辑
摘要:背景: ubuntu下,有时会打不开串口,需要加sudo。为了实现普通用户也能打开串口,使用了下面的方法三。 1. 查看现有权限。例: ls -l /dev/ttyS0 实例输出: crw-rw 1 root dialout 4, 64 9月 11 14:58 /dev/ttyS0 表示原生串口tt 阅读全文
posted @ 2024-09-14 11:12 xcywt 阅读(231) 评论(0) 推荐(0) 编辑
摘要:之前在局域网内部署了一个gitlab服务器,由于断电出问题了,需要重装。记录一下: 注意: 1)还是需要定期备份。 2)重装时要选择和之前相同的版本。如果版本不同,很可能备份文件无法重新恢复。 背景: 断电后,gitlab再启动,一直报502的错。但是能备份,其他都是正常的。 于是先备份一下。 问题 阅读全文
posted @ 2024-09-13 17:39 xcywt 阅读(40) 评论(0) 推荐(0) 编辑
摘要:背景: 之前的项目大致可以分为两层,逻辑层和设备层,运行在同一个主机上。最近在着手搭建一个仿真平台,在另外一台主机上部署机器人机器相关硬件设备,比如陀螺仪,轮机,雷达等。 由于两台主机的时间戳不同步问题,导致定位系统有问题,为此需要实现两个主机的时间同步。 具体分两步:1)测量两主机的网络延迟(ro 阅读全文
posted @ 2024-09-13 14:57 xcywt 阅读(118) 评论(0) 推荐(0) 编辑
摘要:2024.3.8 一种“传新”版本的屏幕共享软件。 需要在Ubuntu20.04上打开一下配置,以及设置一些参数。然后在windows下通过VNC Viewer就能连接上去了。 如何在ubuntu上配置: 参考:https://blog.csdn.net/qq_25985027/article/de 阅读全文
posted @ 2024-09-13 10:47 xcywt 阅读(143) 评论(0) 推荐(0) 编辑

作者:xcywt
出处:https://www.cnblogs.com/xcywt//
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果文中有什么错误,欢迎指出。以免更多的人被误导。
点击右上角即可分享
微信分享提示