关闭

CPP开发者

所属频道 单片机 公众号精选
  • 提升 C  开发效率的几个小技巧

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

    单片机
    2021-08-19
  • 深入理解 RCU 核心原理

    hi,大家好,今天给大家分享并行程序设计中最重要的锁-RCU锁,RCU锁本质是用空间换时间,是对读写锁的一种优化加强,但不仅仅是这样简单,RCU体现出来的垃圾回收思想,也是值得我们学习和借鉴,各个语言C,C,Java,go等都有RCU锁实现,同时内核精巧的实现也是学习代码设计好素...

    单片机
    2021-08-19
  • 普通的 int main(){} 没有写 return 0; 会怎么样?

    经常在知乎上可以看到这个问题,于是尝试着回答了一下,没想到国内C巨佬吴咏炜老师还给我点了个赞,让我相当激动,下面具体介绍下!结论可能大家看上面的图就知道了,没有加return0;编译器会自动添加一个。那怎么证明呢?可以查看相应的汇编代码,查看汇编代码推荐使用godbolt.org...

    单片机
    2021-08-19
  • Linux 编辑器之神 vim 的 IO 存储原理

    故事起因无意间用vim打开了一个10G的文件,改了一行内容,:w保存了一下,慢的我哟,耗费的时间够泡几杯茶了。这引起了我的好奇,vim打开和保存究竟做了啥?vim—编辑器之神vim号称编辑器之神,以极其强大的扩展性和功能闻名。vi/vim作为标准的编辑器存在于Linux的几乎每一...

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

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

    单片机
    2021-08-19
  • 数据告诉你,哪个省才是高考地狱模式?

    ↓推荐关注↓各省高考分数线逐渐出炉,那么高考哪个省最难呢?不同省份的高考难度,一直是一个争议严重的问题。每个地方的人,都会觉得自己是比较难的那一个。因为其实不管在哪里,高考都是件不容易的事情。高考录取,本质上是一种“省内筛选”,是全国各个高校,以省(直辖市,自治区)为单位进行的竞...

    单片机
    2021-08-19
  • 深入理解 DPDK 程序设计:Linux 网络2.0

    ↓推荐关注↓hi,大家好,由于移动互联网不断发展,导致网络流量徒增,推动着网络技术不断地发展,而CPU的运行频率基本停留在10年前的水平,为了迎接超高速网络技术的挑战,软件也需要大幅度创新,结合硬件技术的发展,DPDK(DataPlaneDevelopmentKit),一个以软件...

    单片机
    2021-08-19
  • 内存对齐

     什么是内存对齐?理论上计算机对于任何变量的访问都可以从任意位置开始,然而实际上系统会对这些变量的存放地址有限制,通常将变量首地址设为某个数N的倍数,这就是内存对齐。为什么要内存对齐?1.硬件平台限制,内存以字节为单位,不同硬件平台不一定支持任何内存地址的存取,一般可能以双字节、...

    单片机
    2021-08-19
  • 深入理解无锁编程

    hi,大伙好,今天介绍一下无锁编程基础知识,希望大家可以了解无锁编程基本原理。无锁编程是一个挑战,不仅因为任务本身的复杂性,还因为从一开始就很难深入了解这个主题,因为该主题和底层技术(编译器,CPU,内存)息息相关,需要深厚底层功底。我学习无锁编程是BruceDawson出色而全...

    单片机
    2021-08-19
  • 36 张图详解 DNS :网络世界的导航

    上帝视角我们平时在访问网站时,不使用IP地址,而是网站域名。但是抓包发现:交互报文是以 IP地址进行的。那么IP地址是从哪来的呢?这是因为 DNS 把网站域名自动转换为IP地址。报文交互抓包DNS出现TCP/IP是基于IP地址进行通信的,但是IP地址不太好记。于是出现了另一种方便...

    单片机
    2021-08-19
    DNS
  • 最多能创建多少个 TCP 连接?

    我是一个Linux服务器上的进程,名叫小进。老是有人说我最多只能创建65535个TCP连接。我不信这个邪,今天我要亲自去实践一下。我走到操作系统老大的跟前,说:"老操,我要建立一个TCP连接!"老操不慌不忙,拿出一个表格递给我,"小进,先填表吧"我一看这个表,这不就是经典的soc...

    单片机
    2021-08-19
    TCP
  • C 常见的三种内存破坏场景和分析

    有一定C开发经验的同学大多数踩过内存破坏的坑,有这么几种现象:比如某个变量整形,在程序中只可能初始化或者赋值为1或者2,但是在使用的时候却发现其为0或者其他的情况。对于其他类型,比如字符串等,可能出现了一种出乎意料的值!程序在堆上申请内存或者释放内存的时候,在内存充足的情况下,居...

    单片机
    2021-08-19
  • BPF、eBPF、XDP 和 Bpfilter …… 这些东西是什么?

    ↓推荐关注↓从Linux内核3.15开始,您可能一直在关注内核社区中扩展的BerkeleyPacketFilter(eBPF)的开发,或者您可能仍然将BerkeleyPacketFilter与VanJacobson在1992年所做的工作联系起来。您可能已经使用BPF和tcpdum...

    单片机
    2021-08-19
  • shared_ptr 是线程安全的吗?

    ↓推荐关注↓最近看见小伙伴在讨论这个问题,自己也很感兴趣,上网找到了陈硕大佬的这篇文章,分享给大家!以下是正文:我在《Linux多线程服务端编程:使用muduoC网络库》第1.9节“再论shared_ptr的线程安全”中写道:(shared_ptr)的引用计数本身是安全且无锁的,...

    单片机
    2021-08-18
  • Linux 编辑器之神 vim 的 IO 存储原理

    故事起因无意间用vim打开了一个10G的文件,改了一行内容,:w保存了一下,慢的我哟,耗费的时间够泡几杯茶了。这引起了我的好奇,vim打开和保存究竟做了啥?vim—编辑器之神vim号称编辑器之神,以极其强大的扩展性和功能闻名。vi/vim作为标准的编辑器存在于Linux的几乎每一...

    单片机
    2021-08-18