自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vite Plus 迁移记录与踩坑总结

这个代码的核心功能是:基于输入词的长度动态选择反义词示例,并调用大模型生成反义词,体现了 “动态少样本提示(Dynamic Few-Shot Prompting)” 与 “上下文长度感知的示例选择” 的能力。核心作用:根据输入文本的长度,自动计算并选择合适数量的示例(输入越长,选的示例越少),避免 Prompt 总长度超出模型上下文限制;- 示例数据集(examples):以键值对形式存储「输入-输出」示例,为模型提供任务参考(如"开心"→"伤心");

2026-05-10 16:54:43 244

原创 python开发之路【第四章】:python程序流程控制

第七个参数是 auto.leader.rebalance.enable,表示是否允许定期选举 leader,这个参数最好也设置为 false,如果设置为 true 的话,即使当前 leader 一直运行的很稳定,Kafka 也会重新选举出一个新的 leader 来替代它。第四个参数是 segment.bytes ,与之对应的 broker 参数是 log.segment.bytes,同样是控制 Log Segment 文件的大小,默认是 1GB。连接的配置是一个三元组,包括<协议名称,主机名,端口号>。

2026-05-10 16:29:18 171

原创 记录复现多模态大模型论文OPERA的一周工作

这样做是为了支持离线构建(Source Build),确保即使在没有网络连接的环境下,只要克隆了 VMR,就拥有了构建所需的一切代码。为了适应开源社区的协作习惯,并实现不同组件(如 Runtime, SDK, ASP.NET Core, Roslyn 编译器等)的独立迭代,.NET 团队最初采用了极为分散的多存储库(Multi-Repo)策略1。VMR 作为一个“投影”,兼容了标准 Git 工具链,虽然牺牲了一定的实时性(同步延迟),但换取了对开源社区的友好度。而在 VMR 中,构建是垂直的。

2026-05-10 16:01:29 294

原创 一文学习 工作流开发 BPMN、 Flowable

使用 kubectl-neat 插件,可以自动移除这些由集群生成的冗余字段,仅保留有意义的内容,使 yaml 更加简洁,方便复用。## 这里我直接将 kubectl get -o yaml 与 kubectl-neat get -o yaml 输出对比。## 示例是通过 kubectl plugin 方式安装,使用二进制安装改成 kubectl-neat 就好。## 上面说没啥用的地方就在这...实际上能用的参数只有 get(kubectl-neat 自己的参数)## 自动补全命令用的。

2026-05-10 15:40:10 264

原创 IOFILE结构体的介绍与House of orange

服务成功加锁后,启动后台守护线程,每隔锁过期时间的 1/3 (如 10 秒)检查锁是否仍被自身持有,若持有则延长锁的过期时间(重置为 30 秒),直到业务完成主动释放锁。哨兵将从节点切换为主节点,新主节点无该锁数据,其他服务可重新加锁,导致原锁失效,出现多个服务持有锁的情况。成因:锁 key 粒度太粗(如用“lock:stock”作为所有商品的库存锁),导致所有商品的库存操作都互斥,即使操作不同商品,也需排队等待锁释放,彻底丧失分布式系统的并发优势。③ 释放锁时自动同步清理所有节点锁数据,无需手动协调。

2026-05-10 15:20:15 268

原创 Python AI爬虫实战:爬取张雪峰微博并进行情感分析与词云可视化

针对业界关于 Microsoft Agent Framework 与 Semantic Kernel 关系的疑虑,目前的证据和官方陈述提供了一个清晰的结论:Microsoft Agent Framework 是 Semantic Kernel 在 AI 代理构建领域的官方继任者,其本质上应被视为 Semantic Kernel 的 2.0 版本或代理核心的深度重构版。这种解耦极大地增强了系统的灵活性,使得同一个代理可以在不同的企业环境中快速切换其可调用的资源。对于决定迁移的开发团队,建议采用渐进式的策略。

2026-05-09 21:15:50 282

原创 二分查找力扣题(leetcode)

实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);

2026-05-09 21:02:20 168

原创 二分查找力扣题(leetcode)

上述命令是从 kylin-minimal tar 包构建 docker 镜像。镜像名称为kylin-minimal,标签为v10。本文详细介绍如何使用 kylin v10 iso 文件构建出 docker image,docker 版本为 20.10.7。执行chroot /opt/kylin-minimal命令进入最小系统的根目录,执行ll命令查看目录结构。在/etc/yum.repos.d/下创建kylin-local.repo,并添加如下内容。如果显示以上目录结构,则说明最小系统环境安装成功。

2026-05-09 17:29:15 256

原创 接口测试——pytest框架续集

在Word模板中,只需使用{{ rich_text_var }}引用该变量,即可渲染成包含多种格式的连续段落。由于Word文档 (.docx) 本质上是一个压缩包,其中的图片以二进制形式存储在word/media/目录下,且在某些Word版本中,图片文件名可能被自动重命名(例如改为 image1.png),与原始文件名无关。示例:{{ base_value_float|my_filterB(2) }} 中,base_value_float是变量,my_filterB是过滤器名,2是传递的参数。

2026-05-09 17:21:32 216

原创 别再吹牛了,% Vibe Coding 存在无法自洽的逻辑漏洞!

在一次会话生命周期内,相同会话的请求均会被亲和路由到同一个实例中,并独占该实例,保证了会话交互的连续性、上下文完整性以及多租安全性,同时提供完整的管理接口来主动对会话生命周期进行控制,降低了开发门槛。这不仅满足了高并发场景下的需求,也保证了 Agent 交互的流畅性,避免了传统虚拟机启动慢带来的延迟感。AgentRun 利用函数计算提供的极致弹性能力,实现在分钟内启动成三万个独立的沙箱环境,每个环境都运行在独立的 MicroVM 中,搭配自研开箱即用的沙箱镜像模版,在功能以及性能上为用户提供了双重保障。

2026-05-09 17:13:02 173

原创 工业物联网实时分析的“秒级”革命:拆解DolphinDB如何攻克海量数据下的预警与决策难题

如果你下意识地开始写一连串的if...else if...else,那么恭喜,你正在制造一颗名为“面条代码”的定时炸弹。想象一个场景:产品经理要求,“用户滚动到页面底部时,如果已经登录,就加载A模块数据;3. 函数式编程思维:数组的forEach、map、filter等方法,能让遍历和转换数据的意图更明确,减少副作用。3. for...of (用于数组等可迭代对象) 和 for...in (用于对象属性):让你摆脱索引,直接拿到值。// 直接输出 'red', 'green', 'blue'

2026-05-08 17:39:27 204

原创 粉紫系超人气月兔铃仙

实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);

2026-05-08 17:21:18 153

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-08 17:03:42 146

原创 粉紫系超人气月兔铃仙

实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);

2026-05-08 15:49:36 178

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-08 15:27:22 191

原创 一小时手搓轻量级可代替 drant 的向量数据库

在智能体生态中,这种灵活性是至关重要的,因为 AI 智能体需要一种能够像 Python 一样“丝滑”地生成并执行的代码格式,同时又希望保留 C# 在性能、并发处理和类型安全方面的工业级优势。传统的 C# 开发模式,即所谓的“工程导向型”开发,要求开发者创建一个复杂的项目结构,包括项目文件(.csproj)、解决方案文件(.sln)、属性设置以及依赖项配置。当智能体识别出需要进行复杂的财务审计计算时,它可以生成一个专门的 C# 脚本,将其作为一个临时工具加载,执行完毕后再行释放。通过在文件头添加 #!

2026-05-07 15:20:14 180

原创 [大模型实战 - 完结篇] 告别孤岛:拥抱 MCP 协议,为大模型打造标准“USB 接口”

1 | 张三 | 25 | zhangsan@example...|| 2 | 李四 | NULL | NULL || 5 | 赵六 | 35 | NULL |-- 这时候:count(*) = count(id) = count(name)

2026-05-07 14:59:41 154

原创 工业物联网实时分析的“秒级”革命:拆解DolphinDB如何攻克海量数据下的预警与决策难题

如果你下意识地开始写一连串的if...else if...else,那么恭喜,你正在制造一颗名为“面条代码”的定时炸弹。想象一个场景:产品经理要求,“用户滚动到页面底部时,如果已经登录,就加载A模块数据;3. 函数式编程思维:数组的forEach、map、filter等方法,能让遍历和转换数据的意图更明确,减少副作用。3. for...of (用于数组等可迭代对象) 和 for...in (用于对象属性):让你摆脱索引,直接拿到值。// 直接输出 'red', 'green', 'blue'

2026-05-07 14:36:21 156

原创 粉紫系超人气月兔铃仙

实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);

2026-05-07 14:15:21 152

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-07 13:48:31 159

原创 使用 C++ 模拟 ShaderLanguage 的 swizzle

这样做是为了支持离线构建(Source Build),确保即使在没有网络连接的环境下,只要克隆了 VMR,就拥有了构建所需的一切代码。为了适应开源社区的协作习惯,并实现不同组件(如 Runtime, SDK, ASP.NET Core, Roslyn 编译器等)的独立迭代,.NET 团队最初采用了极为分散的多存储库(Multi-Repo)策略1。VMR 作为一个“投影”,兼容了标准 Git 工具链,虽然牺牲了一定的实时性(同步延迟),但换取了对开源社区的友好度。而在 VMR 中,构建是垂直的。

2026-05-06 16:01:55 122

原创 Linux 系统性能压测工具全景指南(含工程实战)

{"count":1,"elapsed":209,"elapsedAvg":209,"startAt":"2025-07-17 13:33:55.116","stopAt":"2025-07-17 13:33:55.325","success"释谈蓉谈。由于 Calico 官方文档中也有注明,first-found 模式为:使用第一个接口(不包括 Docker 网桥等本地接口)上的第一个有效 IP 地址,建议根据不同需求选择不同配置方式,本文采用的指定接口方式。## 默认使用此配置。## 等待很久后报错。

2026-05-06 15:28:15 173

原创 用 C# 写一个完整的 ReAct 智能体:从命令行输入到任务完成的全链路拆解

Apache SeaTunnel PMC Member 对这个提议提出一些疑问,比如这种集成属于哪一层级,对多引擎兼容性的考量,类型转换的准确性等,并根据社区设计规范,要求发起者提交一份正式的设计文档(Design Document)。目前,Apache SeaTunnel 中的许多非关系型连接器(如 Elasticsearch、向量数据库和数据湖引擎)要求用户在作业配置中显式定义完整的列 Schema。先来看看提交这个 Issue 的作者是为什么想到这个点子的,以及他初步的核心设计概念。

2026-05-06 14:48:46 195

原创 Prompt 焚诀——一个模板,终结你和 AI 的所有沟通问题

Spring Boot 4.0 于 2025 年 11 月正式发布,基于 Spring Framework 7.0,全面支持 Java 25(含虚拟线程优化),是一个里程碑式的大版本更新。配置类迁移适配:针对 Spring Boot 4 中移动的配置类(如 Caching 、Thymeleaf 、WebMvc 、FreeMarker 和 Mustache )提供了全面的识别支持。除了新功能,本次 EAP 还包含了大量的 Bug 修复和性能优化,涵盖了从核心平台、UI、文件系统到各种语言的方方面面。

2026-05-06 14:14:51 209

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-06 13:38:19 159

原创 高光谱成像基础(六)滤波匹配 MF

print(f"当前Python版本 {sys.version_info.major}.{sys.version_info.minor} 符合要求。print(f"警告: 你的Python版本是 {sys.version_info.major}.{sys.version_info.minor}。print(f"\n模拟包信息定义 ({package_info['name']} v{package_info['version']}):")# setuptools.setup() 在实际中会在这里被调用。

2026-05-05 16:01:49 159

原创 深入理解 Transformer:从数据流动看模型架构

官方文档虽然把查询参数讲得很简单,但根据我们的线上经验,对于复杂的分页过滤接口,强烈建议用Pydantic模型来封装查询参数,而不是把一长串参数都列在函数定义里,维护起来简直是灾难。这个工具的选择,好比选螺丝刀,不是最贵的就好,而是最趁手的。踩坑提醒:当同一个参数既可能是路径参数又可能是查询参数时(虽然设计上应避免),FastAPI默认会认为是查询参数。item_id: int = Path(..., title="商品ID", ge=1), # ...表示无默认值,必填。查询参数/dishes?

2026-05-05 15:08:03 188

原创 Openclaw接入自动发文教程

13 年后,我用 fetch-event-source 订阅大模型的“思维流”,用 OCR 解锁图片中的文字——前端,正在成为 AI 产品的第一道体验防线。'Authorization': `Bearer ${getToken()}`, // 从 Pinia 或 localStorage 获取。关键设计:状态分为 'idle' | 'parsing' | 'success' | 'failed',对应四个 UI 区块,避免用户困惑。message.error('翻译服务异常,请稍后重试');

2026-05-05 14:17:43 184

原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障

Trae CN:在solo模式下,可以选择Doubao-Seed-Code、GLM、MiniMax和Kimi-K2,在IDE模式下,模型选择多了“Doubao-Seed-1.8”、“DeepSeek-V3.1-Terminus”和"Qwen-3-Coder"ate:模式选择最多“Zulu”、“Ask”、“Plan”、“Architech”、“Page Builder”、“Figma2Code”,模型可以选“Kimi”、“DeepSeek”、“GLM”和“MiniMax”。这明显是想让我先用IDE。

2026-05-05 13:15:50 193

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

当数据值超过一层时,就用更深的颜色或不同的颜色填充。流图通过中心布局,减少了这种扭曲,非常适合展示随时间变化的趋势和不同类别权重的波动,这种有机的形态还能给读者带来极强的审美愉悦感。如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。流图解决了一个视觉错觉问题:在普通堆叠面积图中,上面的数据层会因为下面数据层的起伏而被迫“扭曲”,很难看出它原本的形状。# ============ 地平线图:股价波动对比 ============

2026-05-05 12:16:38 203

原创 Openclaw接入自动发文教程

13 年后,我用 fetch-event-source 订阅大模型的“思维流”,用 OCR 解锁图片中的文字——前端,正在成为 AI 产品的第一道体验防线。'Authorization': `Bearer ${getToken()}`, // 从 Pinia 或 localStorage 获取。关键设计:状态分为 'idle' | 'parsing' | 'success' | 'failed',对应四个 UI 区块,避免用户困惑。message.error('翻译服务异常,请稍后重试');

2026-05-04 14:14:11 169

原创 【故障公告】数据库服务器磁盘 MBPS 高造成 :-: 期间全站故障

Trae CN:在solo模式下,可以选择Doubao-Seed-Code、GLM、MiniMax和Kimi-K2,在IDE模式下,模型选择多了“Doubao-Seed-1.8”、“DeepSeek-V3.1-Terminus”和"Qwen-3-Coder"ate:模式选择最多“Zulu”、“Ask”、“Plan”、“Architech”、“Page Builder”、“Figma2Code”,模型可以选“Kimi”、“DeepSeek”、“GLM”和“MiniMax”。这明显是想让我先用IDE。

2026-05-04 13:26:26 227

原创 别再数据线了!用FastAPI 分钟搭个局域网文件+剪贴板神器

当数据值超过一层时,就用更深的颜色或不同的颜色填充。流图通过中心布局,减少了这种扭曲,非常适合展示随时间变化的趋势和不同类别权重的波动,这种有机的形态还能给读者带来极强的审美愉悦感。如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。流图解决了一个视觉错觉问题:在普通堆叠面积图中,上面的数据层会因为下面数据层的起伏而被迫“扭曲”,很难看出它原本的形状。# ============ 地平线图:股价波动对比 ============

2026-05-04 12:34:23 202

原创 SpringCloud进阶--Seata与分布式事务

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-03 17:08:58 269

原创 龙芯k - 走马观碑组MPU驱动移植

Spring Boot 4.0 于 2025 年 11 月正式发布,基于 Spring Framework 7.0,全面支持 Java 25(含虚拟线程优化),是一个里程碑式的大版本更新。配置类迁移适配:针对 Spring Boot 4 中移动的配置类(如 Caching 、Thymeleaf 、WebMvc 、FreeMarker 和 Mustache )提供了全面的识别支持。除了新功能,本次 EAP 还包含了大量的 Bug 修复和性能优化,涵盖了从核心平台、UI、文件系统到各种语言的方方面面。

2026-05-03 16:41:43 295

原创 SpringCloud进阶--Seata与分布式事务

今天,我们就来聊聊为什么选择它,以及它是如何让我们的开发体验"起飞"的。用过 Python 写构建脚本的朋友肯定遇到过这种尴尬:脚本跑了五分钟,最后报错说 Confi.guration 拼写错了,或者传了一个字符串给了一个本该是数字的参数。当然,这不是绝对的。比如如果你只想跑个测试,不想打包,Nuke 允许你直接执行 nuke Test,它会自动处理好前置的 Restore 和 Compile 步骤。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。

2026-05-02 16:30:04 366

原创 龙芯k - 走马观碑组MPU驱动移植

Spring Boot 4.0 于 2025 年 11 月正式发布,基于 Spring Framework 7.0,全面支持 Java 25(含虚拟线程优化),是一个里程碑式的大版本更新。配置类迁移适配:针对 Spring Boot 4 中移动的配置类(如 Caching 、Thymeleaf 、WebMvc 、FreeMarker 和 Mustache )提供了全面的识别支持。除了新功能,本次 EAP 还包含了大量的 Bug 修复和性能优化,涵盖了从核心平台、UI、文件系统到各种语言的方方面面。

2026-05-02 15:58:33 301

原创 再次革新 .NET 的构建和发布方式(一)

服务员(事件循环)负责接待顾客(请求),如果某位顾客点菜后需要等厨房做菜(I/O等待),服务员不会傻等,而是先去接待其他顾客。它的核心是“非阻塞”:当一个请求在等待I/O(比如查数据库、调外部API)时,事件循环(Event Loop)会去处理其他请求,而不是干等着。这意味着,如果你的async函数里干的是CPU密集型的活儿(比如复杂的计算、图像处理),那它依然会阻塞整个事件循环,其他请求照样排队。简单总结:I/O密集型用async,CPU密集型用多线程/多进程,混合型任务两者结合。

2026-05-01 14:56:44 223

原创 AI 时代,计算机专业学生该怎么学?

当我们需要发起新的提案时,可以直接使用:/openspec:proposal 就可以触发该指令,此时 AI 就会根据 proposal.md 中所定义的规范,来创建一个新的变更提案。mands/openspec 这个目录定义了三个不同的命令,每个命令文件中所写的提示词,都是 AI 在执行该命令时需要参考的"规范"。你只需要理解这套规范的工作流程,就能与 AI 配合无间。当然,在有需要的时候,我们也可以修改 OpenSpec 初始化时所生成的一系列.md文件,直接变更规范,使其更加符合企业内的业务流程。

2026-04-30 12:57:01 343

原创 再次革新 .NET 的构建和发布方式(一)

服务员(事件循环)负责接待顾客(请求),如果某位顾客点菜后需要等厨房做菜(I/O等待),服务员不会傻等,而是先去接待其他顾客。它的核心是“非阻塞”:当一个请求在等待I/O(比如查数据库、调外部API)时,事件循环(Event Loop)会去处理其他请求,而不是干等着。这意味着,如果你的async函数里干的是CPU密集型的活儿(比如复杂的计算、图像处理),那它依然会阻塞整个事件循环,其他请求照样排队。简单总结:I/O密集型用async,CPU密集型用多线程/多进程,混合型任务两者结合。

2026-04-30 12:46:58 228

空空如也

空空如也

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

TA关注的人

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