C++线程池ThreadPool实现解析
C++带有线程操作,异步操作,就是没有线程池。一般而言,当你的函数需要在多线程中运行,但是你又不能每来一个函数就开启一个线程,所以你就需要根据资源情况固定几个线程来执行,但会出现有的线程还没有执行完,有的又在空闲,如何分配任务呢?这时你就需要封装一个线程池来完成这些操作,有了线程池这层封装,你就只需要告诉它开启几个线程,然后直接往里塞任务就行,并通过一定的机制获取执行结果。
C++智能指针(unique_ptr 、shared_ptr、weak_ptr、auto_ptr)
一、概述
智能指针:智能指针是一个类,用来存储指针(指向动态分配对象也就是堆中对象的的指针)。
C++的指针*与引用&
简单理解下:
C++内存管理
Cmake—-编写CMakeLists.txt文件编译C/C++程序
1.CMake编译原理
如何使用CA证书公钥加密、私钥解密文件
在日常开发时总是会遇到涉及加解密的场景,通常简单的字符串加解密我们会直接使用AES对称加密(密钥长度>=128bits)来实现,本文主要讲解如何使用CA证书实现对大文件的加解密。
使用nc命令传输文件
在某些特殊情况下,我们从一台机器向另一台机器传输文件时会遇到受限于堡垒机或scp被禁等情况,这里分享一个使用nc传输大文件的方法。
智能驾驶功能软件平台设计规范
机器人操作系统ROS—使用激光雷达RpLidar A1进行SLAM定位建图
机器人操作系统ROS—树莓派Pi4环境(Raspberry Pi OS + ROS Melodic)
机器人操作系统ROS—Arduino执行机构

最近学习ROS,涉及底盘移动等执行机构时,发现买robot套件太贵了,又懒得从pi上直接开发,翻箱倒柜找到一个以前跟儿子一起做的arduino履带坦克,就拿它作ros机器人的action执行机构吧。
机器人操作系统ROS—ROS2探索
机器人操作系统ROS—入门
上次我们通过机器人操作系统ROS—初探了解了ROS的基本概念和运行机制,并用内置的小龟模拟器进行了测试。本文我们开始学习如何编写自定义的Service/Client节点进行指定msg格式通信、尝试bag的录制和回放、并简单了解下三维可视化。
一、创建ROS msg消息和srv服务格式
温习一下,上一次我们了解到topic里的Message、ROS Services概念:
消息(msg):
msg文件就是一个描述ROS中所使用消息类型的简单文本。它们会被用来生成不同语言的源代码。
机器人操作系统ROS—初探
一直听到ROS这个名字,很好奇它为什么在机器人领域这么出名,所以从今天起我将从零开始学习一下,看看它到底有哪些神奇之处。本文作为初探篇会先带大家了解ROS的基本概念,通过安装和创建/运行程序包了解Nodes节点、Topics/Msg、Service服务/参数服务器、几个常见的工具。
ROS (Robot Operating System, 机器人操作系统) 提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。它提供了硬件抽象、设备驱动、库函数、可视化、消息传递和软件包管理等诸多功能。ROS遵守BSD开源许可协议。
ROS的官网:https://ros.org/
ROS 图(graph)概念:
-
Nodes:节点,一个节点即为一个可执行文件,它可以通过ROS与其它节点进行通信。
华硕ROG安装ubuntu18.4+CUDA10.0+CUDNN7.4
如何防止客户端的请求被嗅探/钓鱼

本文主要讲解物联网设备、手机APP等client如何避免被嗅探/钓鱼。
一、正常场景
正常的4G请求经过dns域名解析后直接请求真实的服务器,目前4G/5G的直连通路通常都是比较安全的。
How to Learn—组块概论
终身学习中很重要的一点就是把旧的知识和新的知识串联起来,那么如何才能达到一边持续学习,一边又能不断把新旧知识串联起来呢?今天我们一起走进组块概论的学习,了解组块是什么,它是如何形成的,以及如何利用组块来提高学习效果,让学习时间更有价值。
1.组块
1.1 什么是组块
组块能把我们接触到的信息进行打包,让我更好的掌握。我们将学习到如何让自己形成组块,怎样运用它,来帮助我们理解各种学习材料,以及在考试中取得好的成绩。
还有关于学习某一技能或知识点的假象,误区。这是因为我们使用了错误的学习方法,同时骗过了自己,让自己以为自己在学习,其实只不过是在浪费时间。我会告诉你什么样的学习方法是无效,同时也会告诉你什么样的学习方法能帮助你更高效地学习。
当你第一眼看到一个全新的概念时,会感到很迷茫,就像一堆胡乱排放的拼图组件一样,如下左图:
而组块则是一种思考方式,帮助你整合信息。知识。如果你不理解一个概念,你就没有办法让这个概念和其他概念联系起来,而组块原理,像一个桥梁,帮你把新概念整合到旧概念里,形成如左图所示的知识结构。
高可用/高安全的物联网实时消息传输服务方案选型
目前全球进入人工智能、物联网、自动驾驶、5G的新一轮技术革命浪潮中,深度学习、强化学习技术使计算机在某些特定领域(例如人脸识别、AlphaZero)下实现了比人类更好的效果,物联网促进所有电子设备的互联互通,自动驾驶使汽车更加智能和安全,5G使万物互联成为可能。
很多新技术在现实中的落地应用都避免不了大量的消息实时通信,例如物联网或自动驾驶,要想实时的获取海量设备或车辆的信息并进行远程控制指令下发,频繁的断开连接是无法确保通信效率和可靠性的,尤其是自动驾驶v2x等场景,云端结合路灯、红绿灯、其他车辆的数据判定某辆车必须进行减速以避免事故时,指令下发的时效性和送达率将是致命的问题,另外还有网络信号不稳定、地库等特殊环境信号差等情况,本文将针对这些问题来研究和探讨如何构建一个支持弱网的高送达率、高时效性、高安全性、高传输效率的实时双向/多向消息传输服务。
如何使服务具备高可用性
上次介绍了《如何搭建高可用Web集群》,有不少同学反馈让我继续发些高可用相关的内容。本文将继续高可用系列内容,介绍一下SRE和架构师角度对『实现高可用性』的理解。
一、概述
可用性案例
在开始之前,先给大家看下可用性的badcase案例:
可用性问题后果
- 用户损失
–用户体验伤害