- 博客(20)
- 收藏
- 关注
原创 kvstore (二)协议层设计 + 引擎层初识(array数组)
此处为了方便循环遍历,我么可以定义一个枚举,里面对应着指针数组中的具体执行参数。
2025-12-27 17:08:58
156
原创 异步IO - io_uring实现
在 Linux 服务器编程中,I/O 模型的选择直接决定了系统的并发处理能力和性能上限。从传统的阻塞 I/O 到 select/poll,再到如今广泛使用的 epoll(基于 epoll 的 Reactor 模式实现:从原理到百万并发实践_epoll reactor-优快云博客),Linux 一直在探索更高效的 I/O 处理方式。然而,随着现代应用对 I/O 性能要求的不断提高,epoll 模型也显露出一些局限性:它仍然是通知机制而非真正的异步 I/O,应用程序需要在内核通知就绪后自行执行 I/O 操作。
2025-12-21 10:27:55
804
原创 DPDK实现用户态tcp、ip协议栈
传统的linux操作系统内核提供的POSIX API依赖内核协议栈处理数据,其中一般需要两次的数据拷贝 ==① 数据包经过内核的DMA缓冲区拷贝到内核的sk_buff == ,,会使得内核态和用户态频繁切换,导致效率低下。DPDK直接对接拦截网卡数据,将数据包映射到提前配置的用户空间巨页中,省去了内核作为中间桥梁。省去了内核作为中间桥梁。向上DPDK直接向用户态负责,所有的数据直接用户操作,效率大大提高。
2025-12-15 14:05:50
705
原创 基于epoll的reactor模式实现
/定义一个类型,其中 CALLBACK指向函数的指针int fd;//创建一个可以接受 int func(int a) 的指针union {} r_action;
2025-12-04 18:39:40
582
原创 selet/poll/epoll
所谓linux下一切皆文件,就是从这个上面体现,其中sock通信都是以文件描述符 int类型 fd传递的。其中 0 ,1,2 被系统占用,默认从3开始。其中io(也就是fd)可以被回收,回收的时间是60秒。
2025-11-26 21:01:16
556
原创 文件传输助手 - 服务端、服务端
② 连接QTcpSocket的信号(如:readyread、disconnected、errorOccurred)到槽函数。① 调用QTcpServer的nextPendingConnection()获取新连接的socket。③ 将QTcpSocket存储起来,方便后续使用(例如:放入一个列表或容器中管理多个客户端)QPainter 是 Qt 中用于进行二维图形绘制的类。**② 异步获取 void **
2025-11-09 21:34:45
588
原创 deepseekAssistant项目知识点总结(已完成)
/ 默认上下文菜单//文本编辑类部件(QTextEdit, QLineEdit 等)的默认菜单很实用// 完全禁用上下文菜单//游戏中常用// 阻止上下文菜单但可以处理右键事件//自定义的鼠标交互,游戏中常用// 使用动作作为上下文菜单// 创建并添加动作QAction *addAction = new QAction("添加项目", this);// 连接信号。
2025-10-25 12:58:48
690
原创 父窗口和子窗口传递数据(信号和槽方式)
① 包含接受数据的QTextEdit 设置为只读即可② 包含子窗口的堆对象③ 槽函数 – 当子窗口创建的时候连接子窗口的信号,处理接受的数据。
2025-10-16 10:48:12
187
原创 spring基于xml文件注入外部bean
往UserService中注入属性userDao第一步:创建两个包 dao和 service , 其中dao包下包含一个接口和对应的实现类②userDao接口下只添加一个抽象方法UserDaoImpl实现抽象方法UserService中写入userDao属性,并且使用set方式注入。创建一个add方法,里面调用update方法。第二步:创建XML文件对两个要创建的对象进行配置,并且在userService中使用ref的标签注入userDao对象此时name是userService中的属性名
2022-03-29 15:29:39
743
原创 spring学习笔记
一.ioc的两个接口二.ApplicationContext接口主要的两个实现类1.FileSystemXmlApplicationContext是绝对路径,一般是存储在硬盘上的位置2.ClassPathXmlApplicationContext是类文件下的路径,即src下的。IOC操作Bean管理两个步骤:①spring创建对象 ②spring注入属性1.基于XML配置文件的方式创建对象①创建对象②属性注入属性注入中的 set方法注入时具体实例演示:第一步:首先创建
2022-03-29 11:30:29
360
原创 spring中的解耦
原始方式原始方式:在UserServie的方法中直接new UserDao 。工厂模式工厂模式:在UserFactory工厂中new UserDao对象,降低了两个类中间的耦合度,但是这两个类和工厂类中又会耦合,存在缺陷。ioc解耦ioc的解耦用到了 :工厂模式 、XML配置文件 、反射机制第一步第二步在工厂类中的具体操作:先根据XML配置文件,获取到bean中的class后面的信息,也就是类的全限定性类名。利用反射机制中的API (Class.forName)获取加载到堆中的Cla
2022-03-29 10:42:35
1133
原创 蚂蚁&阿里面试
蚂蚁 35分钟1.java种的8种基本数据类型2.说一下反射的机制3.类加载器及其双亲委派机制4.介绍concurrentHashMap 1.7和1.85.JDK1.8的改动6.子父类中代码块的执行顺序7.介绍一下mysql的索引8.介绍一下getBean()9.java中的静态代理和动态代理10.java中的设计模式 介绍适配器模式和装饰者模式11.spring事务12.spring中的注解执行时机13.springboot MQ中间件阿里 38分钟1.介绍一下G
2022-03-24 09:04:33
1241
原创 tcp/ip协议
TCP/IPhttp协议是客户端和服务端进行传输的数据约束规范(二进制文本)。第一行:建立一个与百度相连的双向的通信(输入输出)。第二行:使用http协议请求数据。## http协议请求回来的构成部分1.http协议的协议头----响应头。2.html的体(body)----响应体。应用和内核以下在传输控制层中进行。连接是虚无的,不占用物理空间的。资源的开辟才是真正的连接。socket是一个四元组,其中包括 ip(ip地址) + port(端口号)网络层传输控制层要发送一个包,这
2022-03-17 09:27:17
527
原创 java反射机制
1.首先经过javac.exe的编译阶段,将java文件转化为二进制字节码.class文件2.进入类加载过程,将字节码文件通过类加载器加载到堆空间中。3.进入运行时状态。
2022-03-15 14:52:25
663
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅