Avatar notebook default
15篇文章 · 7579字 · 1人关注
  • Linux 高效获取毫秒级时间

    概 述 在Linux环境下获取毫秒级时间,我们会想到使用gettimeofday()(头文件 )来获取。包括muduo网络库中日志模块打印毫秒级...

  • C++ 实现阻塞队列

    概 述 在多线程服务端程序中,阻塞队列是常用的数据结构。本文介绍使用C++来实现阻塞队列的模板。 实 现 所谓 阻塞队列,即当队列为空时,弹出操...

  • Linux C++ 实现线程池

    概 述 在服务端程序中,并发的处理多客户任务时,为每一个客户任务创建一个线程(或进程),这是不高效。因此引入了线程池(或进程池)来实现高效的并发...

  • Linux 多线程处理信号

    概 述 利用自己封装的线程类,来实现用线程处理信号 设置信号掩码 在之前的文章Linux 信号[https://www.jianshu.com/...

  • Linux pthread封装

    概 述 C++11提供了std::thread类来实现多线程,但是对于Linux上的服务器编程,C++11的std::thread使用不便且没有...

  • Resize,w 360,h 240
    Linux 多进程编程(二) 共享内存

    概 述 进程间通信(IPC)有多种方式,包括管道、命名管道(使用不多)、信号量、消息队列以及共享内存。本文主要介绍共享内存相关的系统调用以及利用...

  • Linux 多进程编程(一) 僵尸进程

    前 言 学习完服务器如何处理I/O事件、信号以及定时事件三大事件后,我们开始学习Linux服务器的多进程编程。 概 述 有关多进程基础的复制进程...

  • Linux 定时器(四) 时间堆

    概 述 在之前文章中实现的定时器,都是以固定的频率调用心搏函数tick(),从而处理到期的定时器任务。时间堆则采用另一种思路:将所有定时器中到期...

  • Resize,w 360,h 240
    Linux 定时器(三) 时间轮

    概 述 上篇文章中实现了基于升序链表的定时器,此定时器存在着当定时器数量变多,效率也会变低的问题。对此,我们使用时间轮在解决。贴一下书中展示的简...

文集作者