关闭

CPP开发者

所属频道 单片机 公众号精选
  • 微软Debug CRT库是如何追踪C 内存泄露的?

    之前已经写过四篇关于Windows中如何查找内存泄露的方法,基本上可以帮你找到内存泄露的问题所在。查看系列文章请发送关键字 内存泄漏 获取。那么为什么要写这篇文章呢?本人在逛知乎的时候,看到一个问题,不乏很多高手的回答。我正好也写了几篇通过工具去分析内存泄露的文章,那先说说工具的...

    单片机
    2021-08-19
  • 分布式基石|最难 paxos 和最易 raft ?

    什么是一致性协议?注意,今天是大白话随便聊聊,目的是直白的了解raft是什么,不用太抠理论定义。什么是一致性协议?字面理解就是让某些东西保持一致的协议嘛。什么是一致?大白话就是内容完全相同呗。以存储场景举例,假设有三个磁盘文件,大小为1M,如果三个文件1M的数据都完全相同,那么这...

    单片机
    2021-11-08
  • Modern C 有哪些能真正提升开发效率的语法糖?

    我们说的ModernC,一般指的是C11及以后的标准,从C11开始,ModernC引入了大量的实用的特性,主要是两大方面,学习的时候也可以从这两大方面学习:增强或者改善的语法特性;新增的或者改善的STL库。我们来看几个具体的案例:案例1:统一的类成员初始化语法与std::init...

    单片机
    2021-10-11
  • 图解 Linux 网络包接收过程

    因为要对百万、千万、甚至是过亿的用户提供各种网络服务,所以在一线互联网企业里面试和晋升后端开发同学的其中一个重点要求就是要能支撑高并发,要理解性能开销,会进行性能优化。而很多时候,如果你对Linux底层的理解不深的话,遇到很多线上性能瓶颈你会觉得狗拿刺猬,无从下手。我们今天用图解...

    单片机
    2021-09-22
  • 重磅干货:五万字长文总结 C/C  知识(下)

    ↓推荐关注↓上篇:《重磅干货|五万字长文总结C/C知识(上)》网络层IP(InternetProtocol,网际协议)是为计算机网络相互连接进行通信而设计的协议。ARP(AddressResolutionProtocol,地址解析协议)ICMP(InternetControlMe...

    单片机
    2021-08-19
  • C  并发编程(C 11 到 C 17 )

    ↓推荐关注↓为什么要并发编程大型的软件项目常常包含非常多的任务需要处理。例如:对于大量数据的数据流处理,或者是包含复杂GUI界面的应用程序。如果将所有的任务都以串行的方式执行,则整个系统的效率将会非常低下,应用程序的用户体验会非常的差。另一方面,自上个世纪六七十年代英特尔创始人之...

    单片机
    2021-08-19
  • C/C 动态检测内存错误利器 - ASan

    ↓推荐关注↓ASan,即AddressSanitizer,是一个适用于c/c程序的动态内存错误检测器,它由一个编译器检测模块(LLVMpass)和一个替换malloc函数的运行时库组成,在性能及检测内存错误方面都优于Valgrind,你值得拥有。一、适用平台在LLVM3.1版之后...

    单片机
    2021-11-15
  • 一文看懂 | GDB 底层实现原理

    在程序出现bug的时候,最好的解决办法就是通过 GDB 调试程序,然后找到程序出现问题的地方。比如程序出现 段错误(内存地址不合法)时,就可以通过 GDB 找到程序哪里访问了不合法的内存地址而导致的。本文不是介绍GDB的使用方式,而是大概介绍GDB的实现原理,当然GDB是一个庞大...

    单片机
    2021-11-09
  • C 日期和时间编程

    ↓推荐关注↓日期和时间是编程中非常常用的功能。本文是对C11到C17中相关编程接口的介绍。介绍C中可以使用的日期时间API主要分为两类:C-style日期时间库,位于头文件中。这是原先头文件的C版本。chrono库:C11中新增API,增加了时间点,时长和时钟等相关接口。在C11...

    单片机
    2021-10-11
  • Linux 系统结构详解

    ↓推荐关注↓Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。一、linux内核内核是操作系统的核心,具有很多最基本功能,它负责...

    单片机
    2021-08-19
    AI 5G
  • C 代码简化之道

    极简主义者,崇尚简洁明快的代码风格,这也可能是不喜欢Java全家桶的原因……当然我说的简洁是要建立在不降低可读性的前提下,即不影响代码本身的表现力。如果为求代码精简而让代码晦涩艰深同样不可取。本文会介绍10个条款。1.善用emplaceC11开始STL容器出现了emplace(置...

    单片机
    2021-09-03
  • 深入理解零拷贝技术

    ↓推荐关注↓hi,大家好,内存拷贝是比较耗时操作,零拷贝是常用优化手段,今天分享的文章就是Linux系统零拷贝技术,Kafka和MySQL开源组件都用到这个核心技术,希望大家可以掌握。DMA与零拷贝技术注意事项:除了DirectI/O,与磁盘相关的文件读写操作都有使用到pagec...

    单片机
    2021-09-03
  • 万字整理,肝翻 Linux 内存管理所有知识点

    Linux的内存管理可谓是学好Linux的必经之路,也是Linux的关键知识点,有人说打通了内存管理的知识,也就打通了Linux的任督二脉,这一点不夸张。有人问网上有很多Linux内存管理的内容,为什么还要看你这一篇,这正是我写此文的原因,网上碎片化的相关知识点大都是东拼西凑,先...

    单片机
    2021-08-19
  • 后端技术趋势指南:如何选择自己的技术方向

    编程多条路,条条通罗马后台大佬后台路线都是面对后台服务器业务,比如web后台服务器,视频后台服务器,搜索后台服务器,游戏后台服务器,直播后台服务器,社交IM后台服务器等等,大部分代码和业务逻辑相关,想成为大佬,必须精通专业领域业务知识。但同时也存在一些通用的技术要求, 比如熟悉编...

    单片机
    2021-08-19
  • C 20 新特性的小细节

    之前整理过一篇C20新特性的文章全网首发!!C20新特性全在这一张图里了,里面提到过latch、barrier和semaphore,但是没有详细介绍过三者的作用和区别,这里详细介绍下。latch这个可能大多数人都有所了解,这就是我们经常会用到的CountDownLatch。用于使...

    单片机
    2021-10-27