- 博客(43)
- 收藏
- 关注

原创 初阶mysql修炼手册(五万字)
数据库基础,库操作,表操作,数据类型,表的约数,表的增删查改,内置函数,mysql复合查询,内外链接,索引,事务管理,视图,用户管理,使用C语言连接数据库
2025-01-30 18:05:52
1300
原创 linux常见面试题/笔试收录(一)
线程安全多个线程同时访问共享资源时,不会导致数据错误或程序异常,即操作是原子的、互不干扰的。如何保证线程安全使用同步互斥锁,信号量,条件变量,读写锁使用原子操作使用TLS线程局部变量存储的方法,避免共享数据互斥锁在linux中多个线程/进程互相等待对方释放资源,导致程序永远阻塞,这就是死锁。产生的四个条件互斥:资源不可共享占有且等待:持有资源还想申请其他资源不可抢占:资源只能主动释放循环等待:形成资源等待环如何避免死锁?资源加锁顺序统一避免长时间占有锁设置锁超时,避免永久等待。
2025-07-24 17:19:28
770
原创 面经-太阳能供电监测系统
本地的话,通过U盘拷贝固件,触发内置升级程序,在线的话,通过MQTT在线接受升级指令,期间也会校验签名保证安全。传感器模块:电压/电流检测(如INA219),光照强度(BH1750),温度(DS18B20)多线程/协程:高优先级任务(如报警)独立线程,低优先级任务(如日志)异步处理。轻微错误,自动修正和日志记录,严重错误,回滚配置和LED灯闪烁和MQTT报警,: 蓝牙,配置一些阈值,后端服务端地址,mqtt地址, WiFi配置。数据采集,异常报警,配置管理,低功耗运行,数据存储与上传。
2025-07-24 17:12:12
899
原创 常见刷题算法解析(一)
在[0,i - 1]区间内,有多少个前缀和等于(sum[i]%k + k )%k。处理数组最后一个值的问题, l == records[l]?在[0,i - 1]区间内,有多少个前缀和等于sum[i] - k。,则有可能情况: 1,-1,1,-1 k = 0的情况。为了清除对后置的影响,使用tmp = 1(初始值)A遍历完headA再遍历headB;,如果2指针相遇,则是环形链表,反之则不是。找到元素和=sum-x的最长子数组的长度。判断2个树,值和节点结构是否相同。当两者之间的0的数目大于k时。
2025-06-30 10:10:17
956
原创 红黑树基本介绍(一)
我们这里直接实现KV模型的红黑树,为了方便后序的旋转操作,将红黑树的结点定义为三叉链结构,除此之外还新加入了一个成员变量,用于表示结点的颜色//枚举定义结点的颜色RED,BLACK//定义结点的数据结构//构造函数:_kv(kv){}//数据成员// 键值对int _color;说明一下:枚举来定义结点的颜色,这样可以增加代码的可读性和可维护性,并且便于后序的调试操作。
2025-06-30 10:08:42
742
原创 高效内存池组件-过程解析
本项目实现了一个高性能的内存池系统,原型是Google的开源项目tcmalloc(Thread-Caching Malloc)。该内存池用于替换系统的malloc和free函数,在多线程环境下提供更高效的内存管理
2025-06-30 10:07:12
555
原创 Linux修炼手册(上)
最简单来说就是“命令行解释器”,将使用者的命令翻译并交给核心(kernel)处理,然后再将核心的处理结果翻译并交给使用者,windows的话就是通过图形接口,linux的话就是通过命令。
2025-06-30 09:56:50
764
原创 STM32F103C8T6 学习笔记摘要(二)
STM32F103C8T6最小系统 了解GPIO/STM32 芯片 第三节 第一个LED灯 - 标准库版本 第三节 第一个LED灯 - 标准库版本 了解时钟树 位带操作 SysTick 系统定时器
2025-06-21 13:16:04
813
原创 STM32F103C8T6 学习笔记摘要(一)
STM32F103C8T6是一款基于ARM Cortex-M3 内核STM32系列的32位的微控制器,程序存储器容量是64KB,需要电压2V~3.6V,工作温度为-40°C ~ 85°C
2025-06-21 11:02:21
1071
原创 C++ 学习笔记精要(一)
int main()// malloc和free动态开辟内置类型的空间return 0;free(p1);// new和delete动态开辟类置类型的空间delete p2;return 0;string s;// reverse 逆置//保留 开空间// 开空间 + 初始化i < 1000;++i)if (sz!int main()
2025-06-17 19:41:50
703
原创 基于 Linux 的高性能在线 OJ 平台(六万字)
这个项目实现的是一个在线oj平台,亮点有在线OJ,负载均衡,主要实现的功能有编译功能,运行功能,编译并运行功能,将编译并运行功能打包成网络服务的功能,获取首页功能,编辑区域页面,提交判题功能(会调用编译运行功能)
2025-04-03 13:57:16
1119
原创 实战项目:方块小游戏
在这个游戏中,有一个区域用来摆放方块,该区域宽为10,高为20,以小正方形为单位,它可以看作是拥有20行10列的一个网格。标准的游戏中一共有7种方块,它们都是由4个小正方形组成的规则图形,依据形状分别用字母I、J、L、O、S、T和Z来命名。
2024-07-22 22:52:01
1024
原创 基于C++实现高并发内存池
一个高并发内存池是用于管理和分配内存的数据结构,它可以在多线程或多进程环境下高效地处理内存分配和释放的需求。内存块管理:内存池可以使用一个固定大小的内存块数组来管理可用的内存块。每个内存块都有一个标志位来表示是否已被分配。分配算法:内存池可以使用一种高效的分配算法,如首次适应(First Fit)或最佳适应(Best Fit),来选择合适大小的内存块进行分配。并发控制:为了支持高并发,内存池需要实现并发控制机制,如互斥锁或读写锁,以确保在多线程或多进程环境下的安全访问。内存回收。
2024-02-18 11:53:23
1230
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人