logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

对于C++:布隆过滤器(bloomfilter)的详细解析

本文深入解析布隆过滤器(Bloom Filter)的原理与应用。布隆过滤器是一种基于位图和多哈希函数的高效数据结构,能快速判断元素是否存在于海量数据中。其核心特点是:以极低的内存占用实现O(k)时间复杂度的查询,判定"不存在"时100%准确,判定"存在"时可能存在误判。文章详细介绍了从位图到布隆过滤器的演进过程,阐述了哈希函数选择、误判率控制等关键技术点,并

文章图片
#c++#面试
对于Linux:vscode中远程连接云服务器以及实用插件推荐

本文详细介绍了如何通过VSCode实现远程开发的全流程解决方案。主要内容包括: 远程开发的优势分析:解决本地资源不足、环境一致性、设备限制等痛点,提供高效协作体验。 完整配置指南: 云服务器选购与基础配置 SSH服务设置与安全加固 本地VSCode环境搭建 SSH密钥认证配置 核心开发流程: 远程文件编辑与同步 C/C++和前端项目开发实战 远程调试技巧 效率提升方案: 20个必备插件推荐 tmu

文章图片
#vscode#ide#编辑器 +3
对于Linux:自定义协议(基于TCP)实现网络计算器的解析

本文介绍了基于TCP协议实现网络计算器的完整方案,重点解决了TCP字节流传输中的粘包/拆包问题。通过设计自定义应用层协议,采用"长度+分隔符"的报文格式,配合JSON序列化/反序列化技术,实现了请求和响应的可靠传输。文章详细阐述了Request/Response类的设计思路,Protocol类的编码解码实现,以及TCPSocket的模板方法封装。服务端采用多进程+守护进程架构确

文章图片
#网络#tcp/ip#网络协议 +3
对于VScode中GitHub Copilot中开启编辑文件权限的方法

本文分享了解决GitHub Copilot无法直接修改文件的问题。作者经过多次尝试后发现,只需在VS Code中打开GitHub Copilot会话,点击指定红框后选择Agent选项,将所有权限勾选即可恢复文件编辑功能。该解决方案简单有效,希望能帮助遇到同样问题的用户快速恢复GitHub Copilot的文件编辑权限。

文章图片
#copilot#github#vscode +4
对于模拟实现C++vector类的详细解析—上

本文介绍了C++中vector类的模拟实现要点。重点讲解了vector通过三个指针(_start、_finish、_endOfStorage)管理内存的核心设计,对比了与string类的差异。详细解析了begin/end迭代器、size/capacity计算、[]运算符重载、clear/pop_back等基础函数的实现逻辑。特别强调了reserve函数中必须使用std::copy而非memcpy来

文章图片
#c++#开发语言#数据结构 +2
对于Linux:进程信号的解析—下

信号处理函数中修改的全局变量(如flag硬件寄存器地址(如嵌入式系统中,寄存器的值可能被硬件自动修改);多线程中被多个线程修改的变量(但需配合锁保证原子性)。5.3.1 僵尸进程的危害占用 PID 资源:PID 是有限的(默认 65535 个),僵尸进程过多会导致无法创建新进程;占用内核资源:僵尸进程的 PCB(进程控制块)会一直保存在内核中,消耗内存。5.3.2 解决方法(3 种)方法适用场景优

文章图片
#linux#运维#服务器 +1
对于Linux:进程信号的解析—下

信号处理函数中修改的全局变量(如flag硬件寄存器地址(如嵌入式系统中,寄存器的值可能被硬件自动修改);多线程中被多个线程修改的变量(但需配合锁保证原子性)。5.3.1 僵尸进程的危害占用 PID 资源:PID 是有限的(默认 65535 个),僵尸进程过多会导致无法创建新进程;占用内核资源:僵尸进程的 PCB(进程控制块)会一直保存在内核中,消耗内存。5.3.2 解决方法(3 种)方法适用场景优

文章图片
#linux#运维#服务器 +1
对于Linux:环境变量的解析

本文介绍了Linux系统中的环境变量及其重要作用。首先解释了命令行参数的概念,说明main函数如何通过argc和argv接收外部参数。接着详细讲解了环境变量的特性:全局性(所有程序可见)和继承性(父进程传递给子进程)。文章区分了本地变量和环境变量的差异,阐述了环境变量的存储位置和管理方式(export/unset命令),并列举了PATH、HOME等常用环境变量的用途。最后通过代码示例展示程序如何读

文章图片
#linux#面试
对于Linux:进程控制的解析

本文深入讲解了Linux进程控制的核心概念,通过"工厂工人"的生动类比详细阐述了进程的生命周期管理。主要内容包括: 进程创建:使用fork函数复制进程,重点解析了写时拷贝机制和父子进程ID分配原理,并通过代码示例演示了fork的实际应用场景。 进程终止:详细区分了三种终止方式(return、exit、_exit),特别讲解了exit的清理机制和缓冲刷新特性,以及退出码的含义和获

文章图片
#linux#面试
对于Linux:基础指令的介绍—中

本文详细介绍了Linux系统的基础指令,包括文件操作(rmdir/rm/mv/cp)、文件查看(cat/less/head/tail)、时间管理(date/cal)以及重定向和管道操作。重点讲解了每个指令的核心功能、常用选项和实际应用场景,如rm的递归删除、tail的日志实时跟踪、管道的命令串联等。同时强调了Linux"一切皆文件"的设计哲学和重定向操作的重要性。这些基础指令是

文章图片
#linux#运维#服务器 +2
    共 12 条
  • 1
  • 2
  • 请选择