自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

西门吹雪

落花吹雪,剑神一笑鬼神惊

  • 博客(190)
  • 资源 (24)
  • 收藏
  • 关注

原创 深入理解Linux网络技术内幕-知识图谱

知识点核心本质面试/实战极易踩坑点NAPI 机制中断+轮询混合,解决中断风暴budget用完退出,未清空队列时不要调用,否则网卡会永久卡死。sk_buff 零拷贝四指针()滑动克隆的skb共享数据区,若修改数据必须在克隆体上深拷贝(skb_copy),否则污染原包。路由查找优先查缓存,未命中走 FIB策略路由(fib_rules)是按优先级顺序匹配的,配置不当可能导致流量突然“失踪”。ARP 状态机REACHABLE->STALE->DELAY是优化窗口。

2026-07-09 13:35:40 332

原创 深入理解Linux网络技术内幕-P6

邻居子系统。

2026-07-09 11:51:58 369

原创 深入理解Linux网络技术内幕-P7

它引入了路由表的基本构成、路由查找算法(LPM)、路由条目类型、作用域(Scope)以及多网卡主机的路由行为等核心概念。与普通路由不同,这些特性(策略路由、多路径、RPF、动态路由)使得Linux不仅仅是一个简单的数据包转发器,而是能够胜任大型骨干网路由器、高性能负载均衡器以及复杂数据中心网关的核心角色。如果第33章的路由缓存是“便利贴”,第34章的路由表(FIB)是“中央数据仓库”,那么第35章讲的就是**“调度员如何根据包裹信息,在仓库里精确找到对应路线”**的完整决策过程。由于第32章已详细解析过。

2026-07-09 11:24:10 373

原创 深入理解Linux网络技术内幕-P5

IPV4Chapter 18. IPv4 Concepts(IPv4概念与头部解析)Chapter 19. IPv4 Foundations and Features(IP层基础与选项处理)Chapter 20. IPv4 Forwarding and Local Delivery(转发与本地投递)Chapter 21. IPv4 Transmission(IP层发送路径)Chapter 22. IPv4 Handling Fragmentation(分片与重组)

2026-07-09 00:10:22 325

原创 深入理解Linux网络技术内幕- P4

的完整软件实现,包括虚拟设备的生命周期(创建/绑定/删除)、数据帧的二层转发逻辑、MAC地址表(FDB)的维护,以及STP(生成树协议)在内核空间的具体实现机制(如定时器、BPDU收发与状态机)。虽然本章是纯概念介绍,没有定义具体的 Linux 内核结构体,但为了后续章节的理解,我们提前剖析**“转发数据库(Forwarding Database,FDB)”**这一核心抽象的设计哲学。Linux 网桥的设计不依赖专用的socket或复杂的管理协议,而是坚持“一切皆文件”的哲学,将网桥的所有配置参数(如。

2026-07-08 23:47:14 403

原创 深入理解Linux网络技术内幕P3

硬件中断与下半部机制,可以类比成工厂的。本章详细阐述了 Linux 内核中,以及现代 Linux 网络子系统如何通过和机制,将高频率的网络包接收处理从“中断上下文”剥离到“进程上下文或软中断上下文”中执行,从而解决高并发下“中断风暴”导致的系统死锁或性能崩塌(Receive-Livelock)问题。

2026-07-08 22:47:36 204

原创 深入理解Linux网络技术内幕 P1-P2

细品

2026-07-08 21:26:25 489

原创 现代C++ 并发编程-学习指南

核心理论断言、白话类比与大师避坑指南保姆级可编译运行代码编译与运行:内核/系统验证实验目的:在系统层面确认编译器及标准库对 C++17 的支持程度。使用 Compiler Explorer 快速对比 GCC/Clang/MSVC 对某一 C++17 特性(如 )的支持情况,确认最低版本要求。理论-实践映射表可深挖的知识点与学习链接代码练习任务C++17 引入了、、和等标准属性,它们是一种向编译器和协作者传递代码意图的“说明”。合理使用可以减少警告、避免误用,并提升代码可读性。本节将拆解

2026-07-07 15:08:46 516

原创 C++数据并行

本章勾勒 C++17 的整体背景与主要改进方向,帮助读者快速建立“C++17 改变了什么、为什么重要”的认知,并说明本书的阅读策略。核心理论断言,白话类比与大师避坑指南保姆级可编译运行代码以下代码展示了 C++17 的两大基础特性:结构化绑定和 初始化器。保存为 ,编译命令:预期输出:。内核/系统验证实验用 宏在运行时验证编译标准,并打印详细编译信息。编译并运行此程序,可实时确认当前工具链是否真正启用 C++17。同时可以尝试修改编译选项(如 )观察输出变化,加深对编译标志的理解。理论-实践映

2026-07-07 14:20:22 216

原创 C++11 for Programmers

重点介绍类型推导 (auto)、基于范围的 for 循环、nullptr 关键字、统一的初始化语法等标志性语法糖,并强调这些特性在零或少运行时开销下极大地提升代码可读性与健壮性。断言1: 是“让编译器替你写类型”的语法糖编译器从初始化表达式中推导变量类型,绝无运行时开销,相当于编译期“类型占位符”。白话类比:就像餐厅服务员根据你点的菜自动选配合适的餐具,你只需说“来份牛排”,不必交代“给我刀叉”。大师避坑指南:避免 (推导会剥去引用与顶层 ),若意图保留引用或常量性应显式用 或 。断言2:基于范围

2026-07-07 09:58:07 440

原创 c++线程之std::async浅析

指定该策略时,std::async会立即创建一个新的线程(或复用线程池中的线程),并在新线程中执行目标任务,任务的执行与主线程完全并行。指定该策略时,任务不会立即执行,也不会创建新线程;只有当调用或时,任务才会在调用者线程(通常是主线程)中同步执行。这是std::async未指定策略时的默认行为(C++17 也可写为),本质是“异步或延迟”的二选一,由编译器/操作系统决定采用哪种方式。std::asyncasync强制并行,deferred延迟同步,默认策略由系统自动选择;

2026-01-06 17:36:04 162

原创 c++线程之标准库的并行算法研究

C++17并行算法基于执行策略seqparpar_unseq)驱动,无需手动管理线程,核心头文件为<numeric>;常用并行算法包括(遍历)、std::sort(排序)、(转换)、(聚合),各有明确适用场景;并行算法底层执行流程为「任务拆分→线程调度→并行执行→结果汇总(聚合类)→同步返回」;关键优化点:优先使用par策略、选择随机访问迭代器容器、保证无数据竞争、仅大数据量场景启用并行。执行策略完整名称常用别名执行模式线程特性核心约束适用场景纯串行执行单线程(调用线程)

2026-01-04 17:34:38 323

原创 c++线程之任务

C++中的任务是一段待执行的逻辑单元,它封装了需要完成的具体工作(如计算、IO操作、业务逻辑等),本质上表现为「可调用对象(Callable Object)」—— 任务只定义「要做什么」,不关心「谁来执行(线程)」和「什么时候执行(同步/异步)」。任务 = 一份「工作清单」(只写了要做什么,没人执行就是废纸);线程 = 一个「工人」(消耗粮食(系统资源),能按清单执行工作,一个工人可以做多份清单,一份清单也可以分给多个工人做);

2026-01-04 16:58:17 173

原创 c++线程之再研究研究多线程

启动差异:C++11 线程无需手动调用start()构造时传入可调用对象即自动启动底层线程(与 Java 线程核心区别)。可连接状态对象的「可连接性」是核心,joinable()返回true时,必须调用join()或detach(),否则对象析构崩溃。阻塞场景:C++11 标准库支持三种常见阻塞:时间阻塞(sleep_for)、锁竞争阻塞(std::mutex)、条件阻塞(终止处理:线程内未捕获的异常会导致程序崩溃,需在线程内部做好异常捕获;线程正常终止后,通过join()回收资源。分离线程。

2026-01-04 16:55:34 486

原创 多线程与锁

若线程t既未调用t.join(),也未调用t.detach(),则t处于可汇入状态(通过成员函数可判断,返回true本质:线程t的“生命周期”仍与创建它的线程对象()绑定,尚未完成资源的最终回收或分离。C++互斥锁的核心是“通过灵活的临界区管控,平衡共享数据的安全性与并发效率选对互斥对象:根据“是否递归”“是否限时”“是否读写分离”需求,选择std::mutex;用对锁定方式:递归场景用,超时场景用,读多写少用的共享锁;优先RAII锁:避免手动lock()unlock()

2026-01-04 16:15:48 679

原创 C++线程之内存模型

该结构体的内存模型受位域规则:0截断)、自然对齐(char填充3字节、double8字节对齐)、类型大小(int4字节、double8字节)共同影响;汇编代码通过成员偏移地址和位运算指令,精准验证了理论布局,位域成员依赖整数单元+位运算访问,区分结构体自身内存与堆内存;核心关键:匿名位域:0强制结束位域单元、基础类型对齐要求、非基础类型(std::string)的内存分布特性。单个线程内:所有内存操作严格按照代码的书写顺序执行(无指令重排,或重排对程序员完全透明)跨线程间。

2026-01-04 15:21:25 615

原创 C++17完整导引-组件之std::string_view

在`C++17`中,`C++`标准库引入了一个特殊的字符串类:`std::string_view`

2023-06-28 20:49:36 3312

原创 C++17完整导引-组件之std::byte

std::byte 是一种独立类型,它实现指定于 C++ 语言定义中的字节的概念。同 char 与 unsigned char ,它能用于访问其他对象所占据的生内存(对象表示),但不同于这些类型,它不是字符类型且非算术类型。 byte 只是位的汇集,而且只对它定义逐位运算符。

2023-06-13 09:58:05 2121

原创 C++17完整导引-新组件之std::any

std::any is the smarter void*/shared_ptr. You can initialize an any with a value of any copyable type

2023-05-29 10:39:00 2037

原创 C++17完整导引-组件之std::variant

std::variant as a “safer union”

2023-05-26 20:20:02 2744

原创 C++17完整导引-组件之std::optional

optional 名称已经包含了一切

2023-05-23 17:12:13 2002

原创 C++17完整导引-模板特性之扩展的using声明

扩展的using 声明

2023-05-23 14:16:05 794 1

原创 C++17完整导引-模板特性之占位符类型模板参数

模板特性之占位符类型模板参数

2023-05-22 18:00:58 1119

原创 C++17完整导引-模板特性之字符串字面量模板参数

字符串字面量模板参数

2023-05-22 15:43:46 787

原创 C++17完整导引-模板特性之折叠表达式

模板特性之折叠表达式

2023-05-22 15:29:45 1109

原创 C++17完整导引-模板特性之编译器的if语句

模板特性之编译器的if语句

2023-05-22 14:29:01 1406

原创 C++17完整导引-模板特性之类模板参数推导

模板特性之类模板参数推到

2023-05-19 16:58:20 2267

原创 C++17完整导引-基本特性

C++ 17 的完整导引,带你进入17的代码世界

2023-05-19 11:53:15 21058

原创 容器中的operator[]注意事项

在实际的应用编程中需要注意std::map中的operator[] 的使用方法,如果不存在默认会插入

2023-05-16 11:13:11 943

原创 设计模式-基本概念

一个被共享的对象不能直接把自身的原始指针(raw pointer)this传递给std::shared_ptr的容器对象(如一个std::vector),因为这会生成该被共享的对象的额外的共享指针控制块。为此,std::shared_ptr API提供了一种类模板设施std::enable_shared_from_this,包含了成员函数shared_from_this,从而允许从this创建一个std::shared_ptr对象。声明一个实现所有三个类的特征的类型的变量,而不必实际构造一个全新的。

2023-05-05 10:26:55 675

原创 windows安装ubuntu时错误WslRegisterDistribution failed with error: 0x8007023e的解决方法

我按照文档激活 wsl 2,然后尝试安装 Linux 发行版,但失败并出现以下错误正在安装,这可能需要几分钟...WslRegisterDistribution 失败,出现错误:0x8007023e错误:0x8007023e {应用程序错误}异常 s (0x

2023-04-06 19:53:34 6061 3

原创 C++ 通过换行符分割字符串

用于c++分割字符串

2023-01-09 16:47:57 1110

原创 C++std::async 简单研究

它是 `c++ `标准库提供的 `API`,用于异步(创建单独的线程)或同步(正常调用函数)执行任务(作为参数传递)。 这取决于启动策略。

2022-10-13 15:18:15 889

翻译 简单的数据结构,避免类的手动伪封装

数据结构简化

2022-09-29 10:35:39 263

原创 c++在线编辑器

C++在线的编辑器推荐

2022-09-28 20:44:25 13788 2

原创 Effective Modern C++[实践]->只要有可能使用constexpr,就使用它

- `constexpr`变量具备`const`属性,且必须由编译器已知的值完成初始化。>- `constexpr`函数在调用时,若传入的实参值都是编译期已知的,则返回的结果也是`constexpr`变量,否则返回非`constexpr`变量>- 比起非`constexpr`变量或`constexpr`函数而言,`constexpr`函数或`constexpr`变量可以用在一个作用域更广的语境中>- `constexpr `是对象和函数接口的一部分。

2022-09-28 17:19:18 1188

原创 c++ 关于注释的故事

注释用于向读取代码的人指示某些内容。注释被编译器视为空白,不会改变代码的实际含义。`C` 语言中有两种注释语法,原始的`/* */`和稍微新一点的`//`。一些文档系统如`Doxygen`使用特殊格式的注释来帮助生成代码的文档。

2022-09-21 18:29:09 438

翻译 深入C++:书籍|工具|教程|博客|社区

不要被“精通 C++”这个标题冲昏了头脑。 这是一个永无止境的旅程。 因为 ISOCPP 每三年 释放一次小象。 目前该标准涵盖近 1500 页,C++ 并不是最容易学习和掌握的语言。 我已经在这个行业度过了足够多的时间。 但有时还是觉得冒名顶替。 我想分享我的 现代 C++ 之旅已经有一段时间了。 虽然,我正在通过这些文章一点一点地分享知识。 但是,还有其他一些东西帮助我度过了这段旅程,比如在线工具、书籍、课程、博客等。所以,以下是这些项目的无序列表。

2022-09-01 21:17:06 336

原创 qt中打印函数QDebug的执行时间是多少呢?

qt debug打印时间测试

2022-09-01 19:55:59 2174 2

原创 Effective Modern C++[实践]->只要函数不会发射异常,就为其加上noexcept

noexcept声明式函数接口的组成部分,这意味着调用方可能会对它有依赖 相对于不带noexcept声明的函数,带有noexcept声明的函数有更多的机会得到优化 noexcept对于移动语义swap,内存释放函数和析构函数非常有用 大多数函数是异常中立的,而不是noexcept...

2022-08-30 15:51:43 472

jee微云开发平台使用

详细介绍了在微云快速开发平台的maven的使用,你应该选择

2018-08-23

网站并发大访问量的知识总结

大访问量就是我们平时所说的高并发量,一台服务器很难承受突如其来的访问压力,可以采用负载均衡和冗余技术来解决这些问题

2018-09-04

idea的安装配置文档

idea的安装配置文档,详细记录了安装的过程及注意事项

2018-08-23

MVP-010-隔膜泵使用说明.docx

 MVP 010-3系列直流隔膜真空泵为4级干式压缩机真空泵。泵是正排量泵,由隔膜运动产生的吸入腔大小的周期性变化。气体流量使阀门自动开启和关闭。泵组直接连接到驱动电机上。

2020-01-08

AltaCore-1553文档翻译.pdf

AltaAPI和卡级协议引擎(PE)在行业中是独一无二的,其中每个1553通道或ARINC通道组都是唯一的逻辑设备(在API中称为“ DEVID”)。单独的逻辑设备允许多应用程序支持,通常每个设备一个应用程序线程。这是独特而强大的功能,因为市场上的大多数其他产品在设计中并不原生支持多个应用程序,并迫使用户的应用程序管理不同的应用程序。 Alta设备甚至对其设备进行了重置,以使相应的应用程序控制不会影响另一个设备的应用程序线程,即使在同一张卡上也是如此。在大多数情况下,每个设备应用程序甚至可以具有自己的中断处理程序。

2020-03-24

信号与槽的两种深度玩法源码

https://blog.csdn.net/MMTS_yang/article/details/123008012?spm=1001.2014.3001.5502

2022-02-18

log4Qt.rar

使用说明为md格式,文档中包含了编译好的动态库文件、测试程序、使用说明等,配置文件找不到的情况可以将log4qt放置在debug或者release目录下即可

2020-03-12

QT高精度定时器

qt及windows提供的定时器在ms级延时时是无法精确到ms的,因此写了一个获取cpu的高精度定时器,仅限在pc机上使用,因为会占用cpu资源不建议在单片机及arm上使用

2018-08-23

win10找不到gpedit.msc时的批处理文件

详细的操作见博客:https://blog.csdn.net/weixin_43876206/article/details/93141265,大神讲的很清楚,但是编码的时候记得选择ANSI,以管理员身份运行。 这个文件是我测试可以用的文件,在win10家庭版上测试是可以用的

2020-07-08

RIGOL编程说明.rar

压缩包一共包含两个文件分别为:《D832程控电源说明书》《DP800_ProgrammingGuide_CN》

2020-01-15

udpTestMacPause.rar

实现了udp的发送和接受,包括文本、十六进制和文件,超过9G的文件的数据传输时可能会出问题,文件的发送以二进制传输

2019-12-26

qt qprinter的类做了简要翻译

对qt的printer进行了简要的翻译,用于文件的打印操作,还是很实用的

2018-08-23

gsl-msys.rar

1、由于msys下载速度相当缓慢,因此将gsl和msys合并上传至此以作备份用 ; 2、由于msys下载速度相当缓慢,因此将gsl和msys合并上传至此以作备份用 ; 3、由于msys下载速度相当缓慢,因此将gsl和msys合并上传至此以作备份用 ;

2020-02-14

数据主键和外键的错误总结

简要介绍了数据的主键和外键,在实践的生产中主键和外键的作用异常的重要

2018-08-23

QtXlsx编译包.rar

1、直接下载的版本编译会出错,网上多下面解决办法:xlsxzipreader.cpp文件,定位到51行,把QList 改成 QVector 如:QVector allFiles = m_reader->fileInfoList(); 2、但是github上的解决办法是下载了另外一个版本的(https://codeload.github.com/VSRonin/QtXlsxWriter/zip/master)这个版本亲测编译木问题 3、用qt编译时先make 在构建

2020-02-17

MultiThreadTest.rar

使用QWaitCondition实现消费者与生产者示例代码,原文地址https://blog.csdn.net/MMTS_yang/article/details/103181703

2019-11-21

qt 多线程共享全局缓冲区

文章地址[https://blog.csdn.net/MMTS_yang/article/details/110071610], 不必再这里下载,环境qt5.12.3

2020-11-24

IMgReader.rar

1、读取灰度图像dat文件进行解析;2、暂可解析一副图像,3、图像宽高可设置;4、使用mingw32进行编译

2020-09-27

IMgReader程序的测试数据文件

程序IMgReader的测试数据文件,博客地址见:https://blog.csdn.net/MMTS_yang/article/details/108831566

2020-09-27

时间的计算

简要的代码实现qt的计算时间操作,希望对大家会有帮助

2018-08-23

testPylon5.rar

Qt msvc使用basler 相机pylon sdk进行windows编程测试 https://blog.csdn.net/MMTS_yang/article/details/103233625

2019-11-25

Zabbix3.0的安装记录文档

安装zabbix的操作记录文档,详细记录了操作的细节及注意事项

2018-08-23

抽奖关键类代码实现.rar

1、自定义抽奖类2、开始抽奖时播放音乐停止后播放选中音乐3、需将这些类假如自己程序进行测试 参考文章:https://blog.csdn.net/MMTS_yang/article/details/103402965

2019-12-05

ConcurrentComputationTest.rar

Qt并行运算QtConcurrent::run()能为你节省多少时间,源码测试程序,qt5.13.0msvc201732

2019-09-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除