Desh

2022年12月2日

C++类内模板与模板关键字.template

摘要: C++类外模板参数与类内模板参数 一般来说模板参数会声明在类的tag,以及类成员函数/非成员函数返回值之前;而修饰在类内部成员函数返回值的模板参数可以降低类实例构造,或调用过程中的声明复杂性,同时会导致编译问题。 关键字.template C++模板编程在遇到类内模板函数声明及定义的情况下,容易导致 阅读全文

posted @ 2022-12-02 21:58 Desh 阅读(131) 评论(0) 推荐(0) 编辑

2022年8月21日

C++反序列化--一种基于class infomation反射库的反序列化数据结构

摘要: 序列化与反序列化概念: 将程序的某些数据存储在内存中,然后将其写入某个文件或是将它传输到网络中的另一台计算机上以实现通讯。这个将程序数据转化成能被存储并传输的格式的过程被称为“序列化”(Serialization),而它的还原过程则可被称为“反序列化”(De-serialization). 详见:  阅读全文

posted @ 2022-08-21 17:46 Desh 阅读(279) 评论(0) 推荐(0) 编辑

2022年6月21日

C++ utils有栈协程内存管理

摘要: utils 协程 基于ucontext的协程(参考博主Zip-List随笔的拓展) man 手册协程 makecontext man手册 In a System V-like environment, one has the type ucontext_t (defined in <ucontext 阅读全文

posted @ 2022-06-21 21:27 Desh 阅读(309) 评论(0) 推荐(1) 编辑

2022年5月16日

workflow后台服务框架使用记录--自定义服务端/客户端

摘要: Workflow是Sogou研发的一款性能优异的C++网络服务框架,纯异步+并行的特性使它拥有极高的性能,核心优势: 1.多线程服务下的阻塞操作; 2.网络线程和执行线程之间的调度策略; 3.底层I/O方式的高效封装epoll; 我们可以workflow提供的底层协议与API,轻松实现自定义十万级并 阅读全文

posted @ 2022-05-16 23:22 Desh 阅读(788) 评论(0) 推荐(0) 编辑

2022年5月13日

Epoll源码深度剖析--转自坚持,每天进步一点点

摘要: 1.基本数据结构 分别是 eventpoll、epitem 和 eppoll_entry。 1.1 eventpoll 我们先看一下 eventpoll 这个数据结构,这个数据结构是我们在调用 epoll_create 之后内核侧创建的一个句柄,表示了一个 epoll 实例。后续如果我们再调用 ep 阅读全文

posted @ 2022-05-13 18:34 Desh 阅读(226) 评论(0) 推荐(0) 编辑

libevent设计思路与实现细节--转自室友

摘要: libevent 流程图 Libevent作为C编写的、轻量级的开源高性能事件通知库,专注与网络IO,相较于C++的庞大的ACE库,源码精简,可跨平台,且同时支持IO多路复用技术;作为服务器底层常用的网络库,笔者和室友交流之后记录了如下总结。 1 libevent的设计思路 设计思路做到统一 统一事 阅读全文

posted @ 2022-05-13 12:41 Desh 阅读(121) 评论(0) 推荐(0) 编辑

2022年5月11日

OS学习--从操作系统启动进程到缺页异常以及内核/用户的处理

摘要: 我们知道一个程序的执行,需要可执行文件的生成和加载,从操作系统的角度来看可执行文件的装载,重点依赖虚拟存储方式,特别是虚拟地址空间的开辟以及硬件地址转换和映射机制。 首先,代码原始文本经过预编译,编译,汇编,链接装载(指包含符号解析与重定向过程的静态链接)之后,生成一类可执行文件,或称为ELF文件; 阅读全文

posted @ 2022-05-11 00:32 Desh 阅读(348) 评论(0) 推荐(0) 编辑

2022年4月21日

C++高性能服务器TinyWebServer扩展开发-Redis数据库连接池/模拟幂等接口

摘要: 简介: 本项目对TinyWebServer轻量级C++服务器项目(https://github.com/qinguoyi/TinyWebServer)进行了功能拓展,支持Redis后台服务与会话管理;并在此基础上进行了新业务功能测试,包括设置超时Tokens与重复操作校验机制,来模拟幂等接口。 项目 阅读全文

posted @ 2022-04-21 00:58 Desh 阅读(2179) 评论(0) 推荐(1) 编辑

2022年2月20日

大数据高级筛选与合并--C++实现与Python实现

摘要: 需求描述: 从大量相同格式的源文件中筛选出符合同一个条件的数据,整合到一张工作表中。 具体源文件格式包括.csv,.txt,拥有相同的前缀名。 如下所示,.txt源文件中的目标数据包含非数字元素,.csv的同类数据存放在单元格中,因此需要判断数据类型: .txt: .csv: 目标数据可能包含非数字 阅读全文

posted @ 2022-02-20 23:28 Desh 阅读(214) 评论(0) 推荐(0) 编辑

2022年2月8日

LeetCode316-去除重复字母:双HashMap计数字符串

摘要: 描述: 给你一个字符串s,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证返回结果的字典序最小(要求不能打乱其他字符的相对位置)。 1 输入:s = "bcabc" 2 输出:"abc" 思路: 1.遍历统计各字符出现个数 2.再次遍历,先判断res中字符出现次数,再进行循环判断当前s[i 阅读全文

posted @ 2022-02-08 21:45 Desh 阅读(35) 评论(0) 推荐(0) 编辑

导航