自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 收藏
  • 关注

原创 HECHEN****

而且是纯粹的那种,不要框架,只依赖原生。早期 JavaScript 没有类的概念,通过 “构造函数+原型链” 模拟面向对象,this 因“动态绑定”特性,从强类型语言的角度看,其表现堪比怪物,this 指向完全依赖调用方式,稍不注意就出错。继承的先父后子,无论是隐式调用父类无参构造,还是显式调用有参构造,父类的构造函数总是先执行,父类成员先行完成初始化,不会出现子类访问未就绪的父类属性的情况。JavaScript 的 this 像怪物,核心是指向由函数调用时的方式决定,属于动态绑定,而非定义时的静态绑定。

2025-11-19 21:25:44 539

原创 P 兄妹(siblings)题解

通信顺序进程(Communicating Sequential Process,CSP)是 Tony Hoare 在 1978 年提出的一种描述并发系统交互的模式,它正是Golang并发模型的灵感源泉。该模型的另一显著特征是,消息的发送与接收是异步进行的。CSP模型的关键特性是,进程的执行不会受到其他进程的直接影响,进程间的交互仅通过通道发送和接收消息来实现。Golang通过轻量级的Goroutine和通信机制Channel,实现了CSP模型的核心思想,即通过消息传递而非共享内存实现并发控制。

2025-11-19 21:21:37 415

原创 VonaJS AOP编程大杀器:外部切面

选择UDP,因为视频会议对实时性要求高,能容忍少量数据丢失,但无法接受高延迟。现代协议演进:QUIC(HTTP/3基础)在UDP上实现了TCP的可靠性,结合两者优点,解决TCP队头阻塞问题。TCP通过序列号、确认机制、超时重传、错误校验等保证数据不丢失、不重复、按序到达。因为UDP的设计初衷是高效、低延迟,适用于实时场景,丢包并不影响系统的正常运行。UDP不保证数据的顺序和完整性,而TCP通过确认机制确保数据的可靠传输。不可以,UDP无法保证数据的到达,也没有重传机制,数据丢失无法恢复。

2025-11-19 21:14:32 231

原创 无缝的缓存读取:双存储缓存策略

这里我们只需要了解大概流程就好了,至于里面是否有再细节一点的流程,甚至 AOT/JIT,就不去深究,后面有机会再分享,属于另外一范畴,可以看到这里就出现了 Roslyn,他的作用就是用于编译原生的 C# 代码为 IL,你可以把他理解为是一个开源编译器平台,而且他本身还是用 C# 写的,相信自己的直觉,没错,用 C# 写的代码编译 C# ,俗称自举,约等于(鸡生蛋、蛋生鸡),形成这种局面开始是在微软诞生了 Roslyn 之后,早期的编译器还是用 C++ 的。只有知道了语义之后才能真正"活"起来。

2025-11-19 21:10:55 595

原创 深入.NET .之,Lazy<T>点滴

GPU根据屏幕像素覆盖率自动选择Mip层级,公式为:$lod=log2(max(\frac{\partial u}{\partial x},\frac{\partial v}{\partial y}))$其中偏导数通过纹理坐标微分计算。:每级Mipmap通过对上一级4个像素取平均值(颜色纹理)或最大值(深度纹理)生成,例如256×256纹理生成128×128层级时,每个新像素由原纹理2×2区域计算得出。生成深度纹理Mipmap时,通过Compute Shader对4×4区域取最大值下采样。

2025-11-18 22:29:31 360

原创 如果说中国的程序员技术偏低,原因可能在这里

结语:在AI技术快速发展的今天,Litho代表了软件工程文档化的新范式——让代码自我描述,让文档自动生成。在现代软件开发中,架构文档往往成为团队的技术债重灾区。模板驱动 Doxygen、Javadoc 生成速度快,成本低 仅限语法层面,缺乏语义理解。AI直接生成 通用LLM+Prompt 灵活性高,理解能力强 成本不可控,输出不稳定。维护成本高 每次代码变更都需要手动更新文档 开发效率降低,文档更新率不足30%格式不统一 缺乏标准化模板,文档质量参差不齐 知识传承困难,审查效率低下。

2025-11-18 22:25:59 419

原创 关于.net反射和metadata加载--致Jeffray Zhao等几位和firelong

杖瞬祭枷前面的 .NET EF Core 快速入门实战教程章节中我们创建了一个名为 EFCoreGenericRepository 的 .NET 9 通用仓储类库,今天我们来把这个 EF Core 通用仓储类库打包成 NuGet 程序包并发布到 NuGet 官网(https://www.nuget.org),并在项目中引入我们发布的 NuGet 程序包。接下来我们使用 .NET CLI 来发布生成好的 NuGet 包到 NuGet 官网(https://www.nuget.org)中。

2025-11-18 22:21:44 353

原创 稳扎稳打 Silverlight . 系列文章索引

但是,当我们有很多个并列最小的数时,对这些数删除的顺序是有讲究的。每次只能删除最左边或最右边的数,否则一定会产生两个相等的数交换位置的情况。这样,才能保证后面被删除的数是最优的。,然后再将前后的数合并,即将要删掉的数删掉。对一个序列分成三段,一段为要删的数前的数,一段为其自己,一段为其后面的数,启动次数就是前面的数的。其实树状数组也可以用,又快又好些,吹普常数大的没边,但我是范浩强吹普死忠粉,我就要用。小 D 认为一个整数序列是好的,当且仅当它先(不严格)上升,后(不严格)下降。,他想让这个序列变成好的。

2025-11-18 22:17:30 314

原创 我对DDD的认知(一)

这里我们只需要了解大概流程就好了,至于里面是否有再细节一点的流程,甚至 AOT/JIT,就不去深究,后面有机会再分享,属于另外一范畴,可以看到这里就出现了 Roslyn,他的作用就是用于编译原生的 C# 代码为 IL,你可以把他理解为是一个开源编译器平台,而且他本身还是用 C# 写的,相信自己的直觉,没错,用 C# 写的代码编译 C# ,俗称自举,约等于(鸡生蛋、蛋生鸡),形成这种局面开始是在微软诞生了 Roslyn 之后,早期的编译器还是用 C++ 的。只有知道了语义之后才能真正"活"起来。

2025-11-18 22:13:20 219

原创 受到启发,写了一个验证输入的简易框架

很明显的,由于client和server的数量是非常多的(因为多个服务可能公用一个公网IP),所以转发表是一个非常宝贵的资源,一旦转发表满了,就无法创建新的连接路径了。从上面代码中我们可以看到,LVS通过设置的timeout_table来设置转发表项超时时间,而不同的tcp状态会有不同的超时时间,而默认的established的超时时间是15 * 60 * HZ也就是15min。为了解决第一种的方案的问题,我们可以依旧复用连接,只不过这个复用时间特别短,例如6s之内复用,超过6s的连接就直接丢弃。

2025-11-17 21:12:48 218

原创 重读《由C#风潮想起的-给初学编程者的忠告》有感

算法基于以下假设:如果gcd(u, v)是最大公约数,那么它可以分成两部分的乘积,一部分是2的整数次幂,另一部分是非2的倍数。步骤1比较好理解,这里分析下步骤2,假设得出最后一步结论a==b时,具体值为a',b',则a'必然满足a' - b' = b'*2x,则有a' = b'*(1+2x),即a'是b'的倍数,则在上一步必有d'=b'*2y = a'' - a',由此a'' = a' + b'*2y,即a''也为b的倍数,由此类推,可知最一开始的a和b闭然都是b'的倍数。

2025-11-17 21:08:47 779

原创 探讨 .NET 新增的 SortedSet 类

斩涎橙纠然后只需要提供一个已经初始化为 0 的字节数组作为内存、一个指向数组的指针、以及用于输入输出的两个字节流就能够让程序运行了。比如 Hello World!程序就可以写成:CopyC# 类型系统入门#既然要用 C# 类型系统来构建 Brainfuck 的编译器,我们需要首先对 C# 类型系统有一些认知。泛型系统#C# 的类型系统构建在 .NET 的类型系统之上,而众所周知 .NET 是一个有具现化泛型的类型系统的平台,意味着泛型参数不仅不会被擦除,还会根据泛型参数来分发甚至特化代码。

2025-11-17 21:04:39 800

原创 Step by Step-构建自己的ORM系列-开篇

试想一下,对于一名刚刚从单体服务转向分布式系统的初学者来说,还在给你铺垫各个组件的功能,然后讲到注册中心的时候,直接就安排上了 CAP 和共识算法这套非常抽象、难以理解的丝滑小连招,应该是非常劝退的。自洽是指,你不能一边享受着这条“好走、明确且广阔的道路”的快捷与轻松,自嘲着自己是“CRUD 工程师”,又下不了决心、没有足够的毅力往难走的路上走,还在心里嘲讽正在这条更难的路上努力往前的人。写的过程中我就想起我之前看过的一本书,《数据密集型应用系统设计》这本分布式领域的书,必读,是非常好的“肥料”。

2025-11-17 20:59:54 261

原创 基于Chrome开源提取的界面开发框架开篇

那二者的区别是啥呢?除了 LangChain4j 的使用复杂之外,源代码量很大,LangChain4j 的文档也不全,要么是没有关键实现代码案例、要么是干脆文档写的都是错的,LangChain4j 的坑比较多,最后只能通过看最新的源码才能解决和使用相关功能,所以 LangChain4j 学习和使用成本是非常高的。ChatModel chatModel = ChatModel.of("http://127.0.0.1:11434/api/chat") //使用完整地址(而不是 api_base)

2025-11-17 20:54:56 218

原创 NoSQL和MemeryCache的出现意味着传统数据库使用方式的变革吗?

注意,这里我故意选错成DeepSeek API,这也是初学者经常会选错的,实际上,若选择这个你就找不到你本地的DeepSeek模型。我是DeepSeek-R1,一个由深度求索公司开发的智能助手。你可以根据你的硬件情况选择,通常模型大小(参数量)越大,模型的理解和生成能力越强,但也会消耗更多的计算资源。目前deepseek-r1模型大小提供了7个选择:1.5b、7b、8b、14b、32b、70b、671b。他真的迅速给我起了10个吸引眼球的标题,还提供了它思考的过程,而且在我这4年前的电脑上跑起来都很迅速。

2025-11-16 15:37:16 392

原创 老调重弹:年龄大了,码农何去何从

很显然 \(f(q)\) 是个很没用而且碍眼并且值又固定的东西,那么预处理算出 \(f(q)\),然后问题转化成求长度为 \(k\) 值域为 \(1 \sim n\) 的序列中单调不降的序列个数,那么仔细思考,对于从 \(n\) 中任选 \(k\) 个,重排一遍一定可以,所以说就是 \(C_n^k\),答案为 \(C_n^k f(q)\)。我们先给每组分配一个物品,只剩 \(n-1\) 个物品,我们要在这 \(n-1\) 个物品中选择 \(k-1\) 个隔板,所以是 \(C_{n-1}^{k-1}\)。

2025-11-16 15:33:16 852

原创 Async和Await异步编程的原理

主从备份,主数据库,从数据库,我们都知道,是往主数据库写入,从数据库自动从主数据库复制数据,但是,这里是有延迟的,而且延迟还不低,不说多吧,100ms是很常见的!上面说到了读写分离,在这个框架中,我主要用dbContext的方式实现数据库的相关操作,别问为啥不用仓储,我感觉仓储的存在很奇怪,或者说不够直接,不够灵活!读写分离最大的问题,不是读写分离如何写,而是如何处理实际情况,比如写入了,更新了,你读取的时候还没有读取到,读取到的是旧的!其实在实际开发中,几乎的项目很多是走主库的,很少走从的,为啥呢?

2025-11-16 15:29:19 245

原创 techlead_krischang

MudTools.OfficeInterop.Word 是一个强大的 .NET 库,它封装了 Microsoft Word 的 COM 组件,让开发者能够以面向对象的方式轻松操作 Word 文档。通过定义规则模板,我们可以创建一个灵活的系统,能够适应不同类型的合同需求,而无需修改代码。虽然 MudTools.OfficeInterop.Word 没有直接提供创建目录的方法,但我们可以通过使用 Word 的内置功能来实现。通过设置段落的大纲级别,我们可以创建一个结构清晰的文档,便于读者快速定位感兴趣的内容。

2025-11-16 15:24:53 635

原创 数据库优化案例——————某市中心医院HIS系统

/去除内容两边的空。slf4j-api日志框架下载地址:https://repo1.maven.org/maven2/org/slf4j/slf4j-api/格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度,%msg:日志消息,%n是换行符。Logback日志框架官方网站:https://repo1.maven.org/maven2/ch/qos/logback/如果一个文件中放置的是XML格式的数据,这个文件就是XML文件,后缀一般要写成.xml。

2025-11-16 15:20:56 894

原创 Solon 整合 LiteFlow 规则引擎:概念与实战

一个典型的问题就是求逆矩阵:在工程实践和数值计算中,直接求解逆矩阵通常是一个性能消耗大且可能不精确的操作,应该尽量避免。其实效率只是一方面的问题,使用计算机求解的另外一个问题是舍入误差累积:在计算机中,浮点数运算存在固有的舍入误差;总而言之,使用通解求解逆矩阵,可能存在不精确且性能消耗大的问题。(对应零奇异值的分量)在正规方程中不受约束——这反映了在列秩不足时普通最小二乘解不是唯一的(可以在零空间方向任意加解)。从以上论述可以看到,SVD分解稳定且能处理秩亏的情况,但比QR分解慢,复杂度高,通常。

2025-11-15 16:43:36 525

原创 HTTP请求头中表示代理IP地址的属性及获取情况

System.out.printf("温度: %d, 湿度: %d%n", temperature, humidity);// 填充到64字节。if (messageReady) { // volatile读:检查新消息。// 2. 发出信号(volatile写)if (ready) { // 3. 检查信号(volatile读)// volatile写:广播发送。// load X;// 1. 修改本地内存中的副本。

2025-11-15 16:39:28 836

原创 一款基于 .NET + Vue 编写的仿钉钉的开源低代码工作流引擎,支持多种数据库,开箱即用!

本相似度计算逻辑,在保证性能和效率的前提下,获取到的结果可能并不是最优的。可模型本身并不知道公司的各种产品信息,所以需要我们在给模型发送问题的时候,将产品?户提出问题后, RAG 会根据问题的内容,在所有的?,向量所包含的信息也就越丰富,使?个基于 RAG 的问答系统的完整流程,包括?,也就意味着向量对应的?它为存储向量做了很多优化,还提供了计算向量相似度等相关的函数,?云百炼的专业向量模型,其处理逻辑对于相关性提供了较好的?户问题的向量,与向量数据库中的向量进?户问题的相关性较低,您可以尝试调整召回的?

2025-11-15 16:34:52 421

原创 浅谈C++ const

既然 GapBuffer 采用下标映射实现实际下标和逻辑下标的转换,而在编辑的过程中,某个字符的逻辑下标往往是不断变动的,而其实际下标则要稳定得多,因此完全可以记录实际下标实现高效率的标记管理。由于间隙内的内容实际不可见,当我通过字符串索引获取字符时,需要跳过间隙,此时存在一个下标映射:将获取字符时的逻辑下标映射到所维护字符数组的实际下标。删除时,直接前移起始指针。局部性编辑:在间隙开头插入时,如果间隙不需要扩容,则记录不变,如果是删除,检查并处理实际下标落入间隙区中的下标,移动或删除,平均时间复杂度。

2025-11-15 16:30:01 414

原创 Dotnet选项模式的全球化与本地化

芽俳妓煽1.1 简介ControlNet是由斯坦福大学研究者张吕敏等人于2023年提出的一种AI图像生成控制技术,核心作用是让用户在保持生成图像 “创造力” 的同时,精准控制图像的结构、姿态、轮廓、深度等关键空间信息,解决了传统扩散模型(如 Stable Diffusion)生成结果 “不可控” 的核心痛点。1 核心原理:“锁定结构+释放风格”ControlNet的本质是在扩散模型(如 Stable Diffusion)的基础上,增加了一套 “结构约束机制”,其原理可拆解为 3 个关键步骤:1)提取 “结构

2025-11-15 16:24:48 714

原创 美团也出招了,LongCat-Flash 开源,主打一个快!

一个典型的问题就是求逆矩阵:在工程实践和数值计算中,直接求解逆矩阵通常是一个性能消耗大且可能不精确的操作,应该尽量避免。其实效率只是一方面的问题,使用计算机求解的另外一个问题是舍入误差累积:在计算机中,浮点数运算存在固有的舍入误差;总而言之,使用通解求解逆矩阵,可能存在不精确且性能消耗大的问题。(对应零奇异值的分量)在正规方程中不受约束——这反映了在列秩不足时普通最小二乘解不是唯一的(可以在零空间方向任意加解)。从以上论述可以看到,SVD分解稳定且能处理秩亏的情况,但比QR分解慢,复杂度高,通常。

2025-11-14 14:19:09 357

原创 计算机领域常用概率学公式的代码实现教程

System.out.printf("温度: %d, 湿度: %d%n", temperature, humidity);// 填充到64字节。if (messageReady) { // volatile读:检查新消息。// 2. 发出信号(volatile写)if (ready) { // 3. 检查信号(volatile读)// volatile写:广播发送。// load X;// 1. 修改本地内存中的副本。

2025-11-14 14:14:47 411

原创 比较、逻辑运算)时,传统的Binding语法显得力不从心。开发者通常需要创建额外的属性、转换器(IValueConverter)或在 ...

本相似度计算逻辑,在保证性能和效率的前提下,获取到的结果可能并不是最优的。可模型本身并不知道公司的各种产品信息,所以需要我们在给模型发送问题的时候,将产品?户提出问题后, RAG 会根据问题的内容,在所有的?,向量所包含的信息也就越丰富,使?个基于 RAG 的问答系统的完整流程,包括?,也就意味着向量对应的?它为存储向量做了很多优化,还提供了计算向量相似度等相关的函数,?云百炼的专业向量模型,其处理逻辑对于相关性提供了较好的?户问题的向量,与向量数据库中的向量进?户问题的相关性较低,您可以尝试调整召回的?

2025-11-14 14:10:07 428

原创 理解 Linux 系统中的熵(Entropy)

既然 GapBuffer 采用下标映射实现实际下标和逻辑下标的转换,而在编辑的过程中,某个字符的逻辑下标往往是不断变动的,而其实际下标则要稳定得多,因此完全可以记录实际下标实现高效率的标记管理。由于间隙内的内容实际不可见,当我通过字符串索引获取字符时,需要跳过间隙,此时存在一个下标映射:将获取字符时的逻辑下标映射到所维护字符数组的实际下标。删除时,直接前移起始指针。局部性编辑:在间隙开头插入时,如果间隙不需要扩容,则记录不变,如果是删除,检查并处理实际下标落入间隙区中的下标,移动或删除,平均时间复杂度。

2025-11-14 14:05:34 389

原创 MySQL 为什么还有kill不掉的语句?

退痈司谟1.1 简介ControlNet是由斯坦福大学研究者张吕敏等人于2023年提出的一种AI图像生成控制技术,核心作用是让用户在保持生成图像 “创造力” 的同时,精准控制图像的结构、姿态、轮廓、深度等关键空间信息,解决了传统扩散模型(如 Stable Diffusion)生成结果 “不可控” 的核心痛点。1 核心原理:“锁定结构+释放风格”ControlNet的本质是在扩散模型(如 Stable Diffusion)的基础上,增加了一套 “结构约束机制”,其原理可拆解为 3 个关键步骤:1)提取 “结构

2025-11-14 14:00:31 905

原创 《ZeroTier教程》-使用docker部署自建PLANET和controller 二次开发ztncui控制面板

payload加入main函数,原因:32位和64位的结构不同,32位调用一个函数需要返回地址,之后再调用其他的进行传参,而且32位是用栈传递参数的,而64为使用比如rdi,rsi等寄存器进行传参,因此需要插入一个 main 函数作为返回地址。但是不知道为什么 ciscn_2019_ne_5 可以跑通。name 中可以保存字符串,因此我们在 name 中输入 /bin/sh,那么我们就可以利用变量 name 的内存地址,得到 system('/bin/sh'),从而得到shell。

2025-11-13 16:59:17 291

原创 sorMcp\neoj-community-.. 下载来源:https://we-yun.com/doc/neoj/../neoj- ...

config.baseURL = 'https://api.example.com' // api地址。(uni as any).$u.toast(err.message || '网络错误')由于在main.uts挂载了全局属性,因此在pages里面的uvue文件,就可以直接调用了。uview-plus 自带一个 http 模块,但是在实际项目中,还是要自己封装一个,统一管理。你只需要 把 loading 开关打开 即可,成功/失败/超时都会 统一自动关闭,无需手动处理。

2025-11-13 16:54:56 319

原创 鸿蒙应用开发从入门到实战(二十):ArkUI内置弹窗组件

根据论文及实验经验,建议将LoRA同时作用于注意力层与MLP层(如target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"]),以有效提升模型精度。优化后,模型训练速度提升2倍,显存占用降低70%。传统大语言模型微调往往面临硬件要求高、迭代速度慢和资源受限等挑战,而Unsloth通过高效的底层实现和友好的接口设计,显著降低了微调的技术门槛,使更多人能够高效、低成本地训练属于自己的定制模型。

2025-11-13 16:50:23 294

原创 AWS EKS部署Prometheus和Grafana

一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。

2025-11-13 16:45:14 232

原创 lessandmore

filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。

2025-11-13 16:40:23 370

原创 Ruby :方法对象

payload加入main函数,原因:32位和64位的结构不同,32位调用一个函数需要返回地址,之后再调用其他的进行传参,而且32位是用栈传递参数的,而64为使用比如rdi,rsi等寄存器进行传参,因此需要插入一个 main 函数作为返回地址。但是不知道为什么 ciscn_2019_ne_5 可以跑通。name 中可以保存字符串,因此我们在 name 中输入 /bin/sh,那么我们就可以利用变量 name 的内存地址,得到 system('/bin/sh'),从而得到shell。

2025-11-12 15:19:05 274

原创 关于项目进度慢的思考----如何提高整体开发效率

config.baseURL = 'https://api.example.com' // api地址。(uni as any).$u.toast(err.message || '网络错误')由于在main.uts挂载了全局属性,因此在pages里面的uvue文件,就可以直接调用了。uview-plus 自带一个 http 模块,但是在实际项目中,还是要自己封装一个,统一管理。你只需要 把 loading 开关打开 即可,成功/失败/超时都会 统一自动关闭,无需手动处理。

2025-11-12 15:14:25 411

原创 WP有约(一):课程安排

根据论文及实验经验,建议将LoRA同时作用于注意力层与MLP层(如target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"]),以有效提升模型精度。优化后,模型训练速度提升2倍,显存占用降低70%。传统大语言模型微调往往面临硬件要求高、迭代速度慢和资源受限等挑战,而Unsloth通过高效的底层实现和友好的接口设计,显著降低了微调的技术门槛,使更多人能够高效、低成本地训练属于自己的定制模型。

2025-11-12 15:09:09 354

原创 基于WEB 的实时事件通知方案

一个或少数几个事件循环线程负责等待I/O事件,并将就绪的任务分发给工作者线程池(Worker Threads)处理,实现了I/O操作与业务逻辑的解耦。其核心价值在于,它将应用程序从低效的I/O等待中解放出来,实现了“一次等待,响应多个事件”的高效并发模式。因此,当应用程序调用epoll_wait时,内核只需返回这个就绪队列的内容,其时间复杂度为O(k)(k为活跃连接数),与被监视的文件描述符总数无关。从本质上看,I/O多路复用仍属于同步I/O,因为应用程序在调用epoll_wait时是阻塞的。

2025-11-12 15:03:48 343

原创 Life a Poem

filename, _ = QFileDialog.getSaveFileName(self, '保存图片', '', 'Images (*.png *.jpg *.bmp)')如果有问题,随时讨论。这就是为什么它叫“Zero-Reference”(零参考),不需要依赖参考图像进行训练,这是一个很大的优点。例如,一张夜晚拍摄的照片,可能因为光线不足而看起来很模糊,经过增强后,就能看到更多细节,如绿植、房屋等。这些效果是通过PyQt5界面封装的,你可以直接打开图片,进行增强处理,并保存结果。

2025-11-12 14:58:08 479

原创 大型网站架构系列:分布式消息队列(一)

payload加入main函数,原因:32位和64位的结构不同,32位调用一个函数需要返回地址,之后再调用其他的进行传参,而且32位是用栈传递参数的,而64为使用比如rdi,rsi等寄存器进行传参,因此需要插入一个 main 函数作为返回地址。但是不知道为什么 ciscn_2019_ne_5 可以跑通。name 中可以保存字符串,因此我们在 name 中输入 /bin/sh,那么我们就可以利用变量 name 的内存地址,得到 system('/bin/sh'),从而得到shell。

2025-11-11 14:39:56 212

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除