关闭

CPP开发者

所属频道 单片机 公众号精选
  • 再谈 Linux epoll 惊群问题的原因和解决方案

    缘起近期排查了一个问题,epoll惊群的问题,起初我并不认为这是惊群导致,因为从现象上看,只是体现了CPU不均衡。一共fork了20个Server进程,在请求负载中等的时候,有三四个Server进程呈现出比较高的CPU利用率,其余的Server进程的CPU利用率都是非常低。中断,...

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

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

    单片机
    2021-09-03
  • C  后台开发知识点及学习路线

    校招形势在去年结束的秋季招聘中,后台开发或服务器开发的岗位需求一度火热,甚至超过了算法岗。不少同学从诸神黄昏的算法岗战场上退下,转向更偏向工程能力的后台开发岗,从而造成后台开发岗位竞争的大爆发。后台开发工程师主流使用的编程语言有C、Java、PHP以及目前慢慢流行的Golang等...

    单片机
    2021-08-19
  • 深入理解 Linux socket

    socketfd长什么样子?什么是socketfd?粗糙的来讲,就是网络fd,比如我们最常见的C/S客户端服务端的编程模式,就是网络通信的一种方式。撇开底层和协议细节,网络通信和文件读写从接口上有本质区别吗?其实没啥区别,不就是读过来和写过去嘛,简称IO。我们先看一下socket...

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

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

    单片机
    2021-08-19
  • 一文看懂 GDB 调试上层实现

    一、前言这篇文章来聊聊大名鼎鼎的GDB,它的豪门背景咱就不提了,和它的兄弟GCC一样是含着金钥匙出生的,在GNU的家族中的地位不可撼动。相信每位嵌入式开发工程师都使用过gdb来调试程序,如果你说没有用过,那只能说明你的开发经历还不够坎坷,还需要继续被BUG吊打。我们都知道,在使用...

    单片机
    2021-10-22
  • 糟糕程序员的 20 个坏习惯

    今天想聊一聊优秀程序员的基本素养。我想你肯定遇到过这样一类程序员:他们无论是写代码,还是写文档,又或是和别人沟通,都显得特别专业。每次遇到这类人,我都在想,他们到底是怎么做到的?随着工作时间的增长,渐渐地我也总结出一些经验,他们身上都保持着一些看似很微小的优秀习惯,但正是因为这些...

    单片机
    2021-11-29
  • 1s 创建 100G 文件,最快的方法是?

    在我们日常工作中,为了验证开发的功能,比如:文件上传功能或者算法的处理效率等,经常需要一些大文件进行测试,有时在四处找了一顿之后,发现竟然没有一个合适的,虽然Linux中也有一些命令比如:vim、touch等可以创建文件,但是如果需要一个100G或者1T的大文件,这些命令就显得力...

    单片机
    2021-10-22
  • 用图文带你彻底弄懂 GDB 调试原理

    一、前言这篇文章来聊聊大名鼎鼎的GDB,它的豪门背景咱就不提了,和它的兄弟GCC一样是含着金钥匙出生的,在GNU的家族中的地位不可撼动。相信每位嵌入式开发工程师都使用过gdb来调试程序,如果你说没有用过,那只能说明你的开发经历还不够坎坷,还需要继续被BUG吊打。我们都知道,在使用...

    单片机
    2021-09-16
  • 掌握这个小技巧,让你的 C  编译速度提升 50 倍!

    随着C项目的持续扩大,编译效率越来越是一个问题了。想一想你每天花在这上面的时间,再乘以团队成员的个数,是不是成本很高?那有没有什么办法,在不需要修改源码,也不更换硬件的情况下提升效率呢?一起来看看下面这几个方法,足以让你的编译速度飞起来。先随便下载一个第三方源码,例如:spdlo...

    单片机
    2021-08-19
  • 10 张图 22 段代码,万字长文带你搞懂虚拟内存模型和 malloc 内部原理

    通过/proc文件系统探究虚拟内存我们会通过/proc文件系统找到正在运行的进程的字符串所在的虚拟内存地址,并通过更改此内存地址的内容来更改字符串内容,使你更深入了解虚拟内存这个概念!这之前先介绍下虚拟内存的定义!虚拟内存虚拟内存是一种实现在计算机软硬件之间的内存管理技术,它将程...

    单片机
    2021-11-05
  • C  内存模型

    ↓推荐关注↓本文是《C并发编程》一文的姊妹篇。将着重介绍C11标准引入的内存模型。前言在《C并发编程》一文中,我们已经介绍了C11到C17在并发编程方面的新增API。借助那篇文章中的知识,你应该已经可以开发一个完善的C并发系统。这对绝大部分人来说,是足够的了。但在一些情况下,我们...

    单片机
    2021-09-18
  • 这100道面试题,用来忽悠半吊子面试官

    昨天在知乎上刷到一个热门问题:程序员需要达到什么水平才能顺利拿到20k无压力?其中一个最热门的回答是:“其实,无论你是前端还是后端、想进大厂还是拿高薪,算法都一定很重要。”为什么,算法会如此重要?初入职场时,一位资深前辈说过的一段话,受用至今:”我们招人的时候都有一个标准,就是招...

    单片机
    2021-09-17
  • 为什么空类大小是 1

    我们可能都知道,C中空类的大小是1。#include class EmptyA {};int main() {       std::cout 

    单片机
    2021-11-29
  • 计算机网络的 89 个核心概念

    当我每了解一个新技术或者新框架的时候,我都想要先把名字概念弄懂是什么,可见概念对于我们的帮助非常大。计算机网络中的概念也是非常庞杂,理解起来比较困难,所以这里,我给大家汇总了计算机网络中89个常见的概念,希望对你有所帮助。主机:计算机网络上任何一种能够连接网络的设备都被称为主机或...