【C++篇】走进C++标准模板库:STL的奥秘与编程效率提升之道
2 STL的历史背景1.3 STL的组成 第二章: STL的版本与演进2.1 不同的STL版本2.2 STL的影响与重要性 第三章: 为什么学习 STL?3.1 从手动编写到标准化解决方案3.2 泛型编程的核心3.3 STL 与算法3.4 高效的内存管理 第四章: 学习STL的三大阶段4.1 第一阶段:能用4.2 第二阶段:明理4.3 第三阶段:能扩展4.4 如何快速进入 STL 学习 第五章: 学习...
【计网】从零开始使用UDP进行socket编程 --- 客户端与服务端的通信实现
人生不过如此,且行且珍惜。 自己永远是自己的主角, 不要总在别人的戏剧里充当着配角。 --- 林语堂 --- 从零开始学习socket编程---UDP协议 1 客户端与服务端的通信2 设计UDP服务器类2.1 基础框架设计2.2 初始化函数2.3 启动函数 3 设计客户端 1 客户端与服务端的通信 我们了解了网络编程的大概,今天我们就来使用UDP协议来实现客户端与服务端之间的通信过程: 客户端可以向...
二十种编程语言庆祝中秋节
二十种编程语言庆祝中秋节 文章目录 二十种编程语言庆祝中秋节中秋快乐!家人们 🥳一 Python二 C三 C++四 Java五 C#六 Perl七 Go八 Asp九 PHP十 JavaScript十一 JavaScript HTML十二 Visual Basic十三 早期 VB十四 Visual C++十五 Delphi十六 Shell十七 Cobol十八 ActionScript十九 Foxpro...
【计网】从零开始使用UDP进行socket编程 --- 服务端业务实现
在我们每个人都曾经历过“沮丧”时刻里, 如果我们不能对别人说有益的好话, 那我们最好还是什么也别说。 --- 卡耐基 《人性的弱点》--- 从零开始使用UDP进行socket编程 1 前情提要2 单词翻译2.1 业务需求2.2 设计字典类2.3 服务端与客户端逻辑2.4 运行效果 3 多人聊天室3.1 业务需求3.2 路由转发Route类3.3 客户端的改造3.4 运行测试 4 总结 1 前情提要 ...
零基础国产GD32单片机编程入门(十六)DMA详解及ADC-DMA方式采集含源码
传送字个数的计数等等,也不是由软件实现,而是用硬件线路直接实现的。所以DMA方式能满足高速I/O设备的要求,也有利于CPU效率的发挥。 二.GD32F103C8T6单片机DMA外设特点 传输数据长度可编程配置,最大到65536; 7个通道,并且每个通道都可配置(DMA0有7个通道); AHB和APB外设,片上闪存和SRAM都可以作为访问的源端和目的端; 每个通道连接固定的硬件DMA请求; 支持软件优先...
C++(2)之Linux多线程服务端编程总结
文章目录 C++之Linux多线程服务端编程读书笔记1. 线程安全的对象1.1 对象的创建1.2 对象销毁1.3 指针类错误1.4 智能指针1.5 并发编程 2. 线程同步精要2.1 线程同步原则2.2 互斥器原则2.3 条件变量2.4 读写锁和信号量2.5 线程库和锁封装2.6 Singleton与线程安全 3. 多线程服务器常用编程模型3.1 单线程单循环3.2 进程间通信3.3 多线程服务器3...
网络编程day04(UDP、Linux IO 模型)
目录 【1】UDP 1》通信流程 2》函数接口 1> recvfrom 2> sendto 3》代码展示 1> 服务器代码 2> 客户端代码 【2】Linux IO 模型 场景假设一 1》阻塞式IO:最常见、效率低、不耗费CPU 2》 非阻塞 IO:轮询、耗费CPU,可以处理多路IO 设置非阻塞的方式 1> 通过函数自带参数设置 2> 通过设置文件描述符的属性,把文件描述符的属性设置为非阻塞...
并发编程 - NSOperation&NSOperationQueue(多线程)
引言 在上篇博客中我们首先介绍了GCD的多线程方案,NSOperation和NSOperationQueue是Apple为我们提供的另一个并发编程框架的高级抽象,用于简化和管理复杂的多线程任务。事实上它基于GCD的高层封装,提供了更强大的功能和更灵活的控制。 尽管GCD非常强大,但在某些场景下,开发者需要对任务的管理有更多的控制,比如任务的依赖关系,取消任务,任务完成后的处理等,这时候NSOpera...
C++20标准对线程库的改进:更安全、更高效的并发编程
引言 C++20 是 C++ 语言的一个重要里程碑,它引入了许多新特性,其中就包括对线程库(thread)的重大改进。这些改进不仅增强了语言的并发编程能力,还解决了先前版本中的一些痛点问题。本文将详细介绍 C++20 在线程方面的改进,并探讨这些改进如何使 C++ 语言变得更加安全和高效。 C++20线程改进概述 C++20 对线程库的主要改进集中在以下几个方面: std::jthread 类型线程...
网络编程day03(网络体系结构、调试命令、TCP/IP对比)
目录 1》网络的体系结构 1> OSI模型 2> TCP/IP模型 3> 常见网络协议 4> DNS域名解析协议 2》 网络调试命令 1> ping:测试网络连通性(ICMP) 2> netstat 3》Dos (拒绝式服务)攻击? 4》 TCP/IP协议对比 1》网络的体系结构 1> OSI模型 2> TCP/IP模型 OSI和TCP/IP模型对应关系图 3> 常见网络协议 4> DNS域...