以道御术
码龄13年
求更新 关注
提问 私信
  • 博客:162,951
    162,951
    总访问量
  • 34
    原创
  • 52
    粉丝
  • 88
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
加入CSDN时间: 2014-01-03
博客简介:

以道御术

查看详细资料
个人成就
  • 获得79次点赞
  • 内容获得19次评论
  • 获得201次收藏
  • 代码片获得329次分享
  • 博客总排名361,280名
创作历程
  • 7篇
    2024年
  • 2篇
    2020年
  • 6篇
    2019年
  • 14篇
    2018年
  • 5篇
    2017年
成就勋章
TA的专栏
  • C++ 多线程技术
    付费
    6篇
  • C++ 23种设计模式
    付费
    1篇
  • C++ 基础
  • 深度学习
    3篇
  • 图像处理
  • matlab编程
    1篇
  • 数学基础
  • opencv
    1篇
  • python基础
    1篇
  • pcl
    1篇
  • Visual Studio
    1篇
  • ubuntu相关
    16篇
  • TensorFlow
    1篇

TA关注的专栏 7

TA关注的收藏夹 0

TA关注的社区 1

TA参与的活动 0

兴趣领域 设置
  • 人工智能
    图像处理
创作活动更多

AtomGit「码动四季·开源同行」秋季征稿活动

秋季征稿主题:开源成果经验分享 成果不止一种形态,我们为你准备了六大赛道,总有一款适合你: 开源项目成果复盘 把项目一年/一季的成长摊开来看:里程碑复盘、Star 与用户增长复盘、版本迭代复盘、从 0 到 1 的发布复盘。 🖊️ 示范选题: ●开源项目从 0 到 1000 Star,我做对了什么 ●开源一周年,我交出的成绩单 这类文章不只是一次经验分享,也是一张项目名片。欢迎将项目托管到 AtomGit 并申请成为 G-Star 项目,通过后可获得平台流量推荐、项目宣传等权益。(G-Star:AtomGit 最具影响力开源项目) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1f90c61528ad410d8d66f9d0e3707a5a.png) 咨询 G-Star 项目申请 2️⃣ 技术经验体系化沉淀 踩坑合集、最佳实践总结、工具链实战、CI/CD 流水线搭建、代码重构与架构演进。 🖊️ 示范选题: ●提了 50 个 PR 后,我总结的开源协作避坑清单 ●一次重大重构复盘:把单体拆成可维护的模块 3️⃣ AI 赋能开源的实战成果 AI 编程助手实战测评、基于开源模型的微调与应用开发、AI 辅助研发提效流水线。 🖊️ 示范选题: ●我用 AI 编程助手把提 PR 效率翻了 3 倍 ●基于开源大模型搭了个 XX 工具(附完整教程) 4️⃣ 开源共建笔记|文档、社区与布道 开源文档写作与翻译、issue 互助经验、组织 meetup、用开源项目做教学与分享。 🖊️ 示范选题: ●一个优秀开源项目,文档应该怎么写 ●我用开源项目做了个线上 Workshop ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/23e83ceebc594c379f7fc6aa8dcfa40c.png) 扫码加入码动四季投稿交流群,和更多伙伴一起交流技术!

39人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

【6】c++多线程技术之线程的参数传递

在C++中,向线程传递参数的方式主要有两种:一种是通过函数参数,另一种是通过类成员。
原创
博文更新于 2024.04.13 ·
574 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【1】c++多线程技术之线程基础概念

进程和线程是现代操作系统中并发执行程序的两种实体,它们之间存在一些本质的区别。进程是资源分配的独立单位,拥有独立的地址空间和资源,而线程则是进程中的执行单元,共享进程资源和地址空间。在多任务操作系统中,进程和线程共同工作以实现并行处理和任务调度,提高了系统资源的利用效率和程序执行的效率。
原创
博文更新于 2024.04.12 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【5】c++多线程技术之线程间通信

线程间通信是多线程编程中的一个重要概念,它指的是在一个程序中的多个线程之间传递信息或者同步执行的过程。在C++中,有多种方式可以实现线程间的通信。
原创
博文更新于 2024.04.12 ·
696 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【4】c++多线程技术之高级线程同步技术

是C++17中引入的一种同步原语,用于允许多个线程同时读取共享数据,但在写入数据时只允许一个线程进行操作。但是,如果有一个线程想要写入共享资源,它必须首先获得写锁,这会阻止其他所有线程(包括读操作和写操作)访问共享资源,直到写锁被解锁。首先,它会锁定互斥锁,然后将元素添加到队列中,最后通过条件变量通知一个正在等待的线程。,所以多个读取线程可以同时访问数据,而写入线程会阻塞其他线程的访问。:这是一个互斥锁,用于保护队列的访问,防止多个线程同时修改队列。:这是一个条件变量,用于阻塞和唤醒等待队列的线程。
原创
博文更新于 2024.04.12 ·
380 阅读 ·
9 点赞 ·
0 评论 ·
1 收藏

【3】c++多线程技术之线程同步与互斥

线程安全问题与数据竞争是多线程编程中的重要概念。在C++中,线程安全问题主要涉及到多个线程对共享数据的访问,如果多个线程同时访问同一块内存区域,并且至少有一个线程对该区域进行写入操作,那么就可能发生数据竞争(Data Race)。数据竞争可能导致程序行为不可预测,甚至可能引发严重的错误。为了避免数据竞争,我们需要使用一些同步机制,如互斥锁(Mutex)和条件变量(Condition Variable)等。下面是一个简单的例子,展示了如何使用C++的std::mutex。
原创
博文更新于 2024.04.12 ·
805 阅读 ·
4 点赞 ·
0 评论 ·
2 收藏

【1】C++设计模式之【单例模式】

下面分别给出这五种实现方式的代码示例和解释。解释:这种方式是在第一次调用getInstance()方法时才创建实例,但是这种方式在多线程环境下是不安全的,可能会出现多个实例。
原创
博文更新于 2024.04.12 ·
689 阅读 ·
9 点赞 ·
0 评论 ·
3 收藏

【2】c++多线程技术之多线程标准库的使用

在C++中,多线程有关的头文件为<thread>,我们可以使用std::thread类来创建和管理线程。在这个示例中,我们首先包含了头文件,以便我们可以使用std::thread类。然后,我们定义了一个名为print_hello的函数,这个函数将在新线程中执行。在main函数中,我们创建了一个名为t的新线程,并将print_hello函数作为参数传递给它。这将导致print_hello函数在新线程中执行。最后,我们调用了t.join()方法来等待线程完成。
原创
博文更新于 2024.04.11 ·
375 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ubuntu16.04启动Anaconda Navigator 图形化界面

方法一: $ source ~/anaconda3/bin/activate root $ anaconda-navigator 方法二: $ conda install -c anaconda anaconda-navigator​ $ anaconda-navigator 参考:https://stackoverflow.com/questions/43030871/anaco
原创
博文更新于 2024.04.11 ·
57442 阅读 ·
12 点赞 ·
1 评论 ·
82 收藏

在 ubuntu 中使用微信

话不多说,直接上教程。 我用的系统是 Ubuntu 16.04 64位 (1)先下载微信的 linux 客户端 地址1:https://github.com/geeeeeeeeek/electronic-wechat/releases 地址2:https://cloud.189.cn/t/uMfa6zjaqmMv (2)解压并双击 (3)这就可以啦,这个应该是个网页版的微信,不...
原创
博文更新于 2018.04.13 ·
1630 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Ubuntu 下安装vscode

1:执行下列命令: sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make sudo apt-get update sudo apt-get install ubuntu-make sudo umake web visual-studio-code done! 2:参考文献: 【1】 https://www.cnblogs.com...
原创
博文更新于 2020.06.18 ·
6589 阅读 ·
0 点赞 ·
3 评论 ·
3 收藏

linux install jsonapp库

安装步骤 // 安装依赖 scons sudo apt-get install scons // 现在库文件 wget https://nchc.dl.sourceforge.net/project/jsoncpp/jsoncpp/0.5.0/jsoncpp-src-0.5.0.tar.gz tar -zxvf jsoncpp-src-0.5.0.tar.gz cd jsoncpp-src-0....
原创
博文更新于 2020.03.05 ·
587 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

c++ 智能指针

智能指针 简介 c++中动态内存的管理是通过new和delete来完成的,只要保证new和delete的配对使用,是没有问题的。但是有时候我们会忘记释放内存,甚至有时候我们根本就不知道什么时候释放内存。特别时在多个线程间共享数据时,更难判断内存该何使释放。这种情况下就机器容易产生引用非法内存的指针。 为了更容易(同时也更安全的管)的使用动态内存,新的标准库(C++11)提供了两种智能指针(smar...
原创
博文更新于 2020.01.14 ·
319 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ubuntu18.04启动Anaconda Navigator 图形化界面

方法一: $ source ~/anaconda3/bin/activate root $ anaconda-navigator 方法二: $ conda install -c anaconda anaconda-navigator​ $ anaconda-navigator 参考:https://stackoverflow.com/questions/43030871/anaconda-na...
原创
博文更新于 2019.11.04 ·
1422 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

linux 系统安装 QQ 2019【QQ for linux】

linux 系统安装 QQ 下载列表 架构 Value x64 shell rpm deb pacman ARM64 shell rpm deb MIPS64 shell rpm 安装帮助 如何选择安装包? Linux QQ 目前支持x64(x86_64、amd64)、arm64(aarch64)、mips64(mips64el)三种架构,每种架构...
原创
博文更新于 2019.10.31 ·
3834 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

c++中map常见用法说明

C++中map提供的是一种键值对容器,每一对中的第一个值称之为关键字(key),每个关键字只能在map中出现一次;第二个称之为该关键字的对应值。 声明 //头文件 #include<map> map<int, string> ID_Name; // 使用{}赋值是从c++11开始的,因此编译器版本过低时会报错,如visual studio 2012 map<i...
原创
博文更新于 2019.10.19 ·
746 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Ubuntu下查看电脑CPU温度

1:sudo apt-get install lm-sensors hddtemp 2:sudo sensors-detect 3:sensors 4:sudo apt-get install psensor 5:psensor 6:done! 7:参考文献: 【1】 https://www.linuxidc.com/Linux/2015-06/119201.htm...
原创
博文更新于 2019.09.03 ·
17795 阅读 ·
5 点赞 ·
0 评论 ·
24 收藏

在ubuntu下安装opencv和PCL时 undefined reference to `TIFFReadDirectory@LIBTIFF_4.0

声明:本文系转载自 https://blog.csdn.net/u011361393/article/details/83210824 在ubuntu下安装opencv和PCL时,遇到如下错误 undefined reference to `TIFFReadDirectory@LIBTIFF_4.0 /usr/lib/libvtkIO.so.5.10.1: undefined reference ...
原创
博文更新于 2019.08.31 ·
3161 阅读 ·
3 点赞 ·
6 评论 ·
5 收藏

ubuntu下编译安装pcl

本文将介绍如何在 ubuntu下编译安装pcl 第一步:安装依赖 sudo apt-get update sudo apt-get install git build-essential linux-libc-dev sudo apt-get install cmake cmake-gui sudo apt-get install libusb-1.0-0-dev libusb-dev libud...
原创
博文更新于 2019.08.29 ·
1741 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

Ubuntu下安装opencv及opencv扩展模块opencv_contrib

本文将给大家介绍 Ubuntu下安装opencv及opencv扩展模块 opencv_contrib, 以 opencv3.4.3 为例子 第一步:下载源码 opencv opencv_contrib 第二步:编译安装 先安装一些依赖环境 sudo apt-get install cmake sudo apt-get install build-essential libgtk2.0-dev ...
原创
博文更新于 2019.08.29 ·
926 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Ubunut 下安装网易云音乐

1:先去官网下载最新版本的网易云http://music.163.com/#/download 2:执行命令: sudo dpkg -i netease—— 3:如果报错了 ,执行以下命令 sudo apt-get -f install 4:然后继续执行: sudo dpkg -i netease—— done!...
原创
博文更新于 2019.08.29 ·
7489 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏
加载更多