- 博客(49)
- 收藏
- 关注
原创 前端硬核指南:如何让AI“打字机”效果在浏览器里丝滑跑起来?
其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。
2026-05-08 18:29:00
159
原创 面试复盘之WHERE和HAVING的区别以及MySL的索引
OFA(One For All)是字节跳动提出的多模态预训练模型,支持视觉问答、图像描述、图像编辑等多种任务,其中视觉问答(VQA)是最常用的功能之一——输入一张图片和一个英文问题(该模型仅支持英文),模型就能输出对应的答案(比如输入“瓶子”图片+问题“What is the main subject?ModelScope 加载 OFA 模型时,会自动检查依赖版本,如果发现版本和它硬编码的要求不一致,会直接卸载你的版本并强制安装指定版本——哪怕你已经安装了正确的版本,也会被覆盖,导致之前的努力白费。
2026-05-08 17:29:33
206
原创 龙虾白嫖指南,请查收~
注意:templateName、createAsContainerDatabase必須指定。修改db_install.rsp文件中以下内容。12.1.编辑dbca.rsp安装文件。1.7.关闭防火墙还有selinux。10.2.静默安装Oracle软件。1.6.解析/etc/hosts。6./etc/profile配置。10.静默安装Oracle数据库。查看是否安装有Oracle软件。4.配置Oracle的环境变量。以下在root用户下操作。oracle用户下操作。oracle用户下操作。
2026-05-08 17:00:11
145
原创 面试复盘之WHERE和HAVING的区别以及MySL的索引
OFA(One For All)是字节跳动提出的多模态预训练模型,支持视觉问答、图像描述、图像编辑等多种任务,其中视觉问答(VQA)是最常用的功能之一——输入一张图片和一个英文问题(该模型仅支持英文),模型就能输出对应的答案(比如输入“瓶子”图片+问题“What is the main subject?ModelScope 加载 OFA 模型时,会自动检查依赖版本,如果发现版本和它硬编码的要求不一致,会直接卸载你的版本并强制安装指定版本——哪怕你已经安装了正确的版本,也会被覆盖,导致之前的努力白费。
2026-05-08 15:48:50
304
原创 AI辅助编程系统工程的注意事项-程序员从“农耕”走向“魔法”的时代
你的游戏引擎是谁写的?是Python turtle出轨了C++的语法,还是C++红杏出墙学会了Python的撩人技巧?turtle.fd(d).left(72) —— 这链式调用,这丝滑手感,这简直是把C++从"西装革履的老干部"改造成了"穿着潮牌的邻家哥哥"!它让C++放下了身段,穿上了Python的便装,但骨子里还是那个能操控硬件、驾驭操作系统、构建数字文明的底层王者!C++不仅学会了Python的简单,还保持了C++的优雅链式语法!但当你用C++精灵库画图时,你学的是——怎么在数字世界的地基上画图!
2026-05-07 15:56:50
138
原创 前端硬核指南:如何让AI“打字机”效果在浏览器里丝滑跑起来?
其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。
2026-05-07 15:22:08
234
原创 面试复盘之WHERE和HAVING的区别以及MySL的索引
OFA(One For All)是字节跳动提出的多模态预训练模型,支持视觉问答、图像描述、图像编辑等多种任务,其中视觉问答(VQA)是最常用的功能之一——输入一张图片和一个英文问题(该模型仅支持英文),模型就能输出对应的答案(比如输入“瓶子”图片+问题“What is the main subject?ModelScope 加载 OFA 模型时,会自动检查依赖版本,如果发现版本和它硬编码的要求不一致,会直接卸载你的版本并强制安装指定版本——哪怕你已经安装了正确的版本,也会被覆盖,导致之前的努力白费。
2026-05-07 14:26:40
238
原创 龙虾白嫖指南,请查收~
注意:templateName、createAsContainerDatabase必須指定。修改db_install.rsp文件中以下内容。12.1.编辑dbca.rsp安装文件。1.7.关闭防火墙还有selinux。10.2.静默安装Oracle软件。1.6.解析/etc/hosts。6./etc/profile配置。10.静默安装Oracle数据库。查看是否安装有Oracle软件。4.配置Oracle的环境变量。以下在root用户下操作。oracle用户下操作。oracle用户下操作。
2026-05-07 13:58:28
215
原创 AI 自动编程:一句话设计高颜值博客
针对业界关于 Microsoft Agent Framework 与 Semantic Kernel 关系的疑虑,目前的证据和官方陈述提供了一个清晰的结论:Microsoft Agent Framework 是 Semantic Kernel 在 AI 代理构建领域的官方继任者,其本质上应被视为 Semantic Kernel 的 2.0 版本或代理核心的深度重构版。这种解耦极大地增强了系统的灵活性,使得同一个代理可以在不同的企业环境中快速切换其可调用的资源。对于决定迁移的开发团队,建议采用渐进式的策略。
2026-05-06 16:14:59
208
原创 前端硬核指南:如何让AI“打字机”效果在浏览器里丝滑跑起来?
其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。
2026-05-06 15:36:56
216
原创 面试复盘之WHERE和HAVING的区别以及MySL的索引
OFA(One For All)是字节跳动提出的多模态预训练模型,支持视觉问答、图像描述、图像编辑等多种任务,其中视觉问答(VQA)是最常用的功能之一——输入一张图片和一个英文问题(该模型仅支持英文),模型就能输出对应的答案(比如输入“瓶子”图片+问题“What is the main subject?ModelScope 加载 OFA 模型时,会自动检查依赖版本,如果发现版本和它硬编码的要求不一致,会直接卸载你的版本并强制安装指定版本——哪怕你已经安装了正确的版本,也会被覆盖,导致之前的努力白费。
2026-05-06 14:12:44
257
原创 龙虾白嫖指南,请查收~
注意:templateName、createAsContainerDatabase必須指定。修改db_install.rsp文件中以下内容。12.1.编辑dbca.rsp安装文件。1.7.关闭防火墙还有selinux。10.2.静默安装Oracle软件。1.6.解析/etc/hosts。6./etc/profile配置。10.静默安装Oracle数据库。查看是否安装有Oracle软件。4.配置Oracle的环境变量。以下在root用户下操作。oracle用户下操作。oracle用户下操作。
2026-05-06 13:31:10
204
原创 AI 自动编程:一句话设计高颜值博客
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-05 16:49:53
152
原创 前端硬核指南:如何让AI“打字机”效果在浏览器里丝滑跑起来?
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 16:14:23
163
原创 MCP C# SDK v. 正式发布
本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。
2026-05-05 15:36:41
203
原创 面试复盘之WHERE和HAVING的区别以及MySL的索引
服务员(事件循环)负责接待顾客(请求),如果某位顾客点菜后需要等厨房做菜(I/O等待),服务员不会傻等,而是先去接待其他顾客。它的核心是“非阻塞”:当一个请求在等待I/O(比如查数据库、调外部API)时,事件循环(Event Loop)会去处理其他请求,而不是干等着。这意味着,如果你的async函数里干的是CPU密集型的活儿(比如复杂的计算、图像处理),那它依然会阻塞整个事件循环,其他请求照样排队。简单总结:I/O密集型用async,CPU密集型用多线程/多进程,混合型任务两者结合。
2026-05-05 14:52:55
180
原创 AI 工程化实战:拒绝“胡说八道”,用 RAG 给大模型外挂私有大脑!
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-04 14:52:58
182
原创 耗时小时分,理想的AI编程助手Claude Code 部署与本地自托管模型配置
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 14:33:28
180
原创 .NET .Result 避坑指南:不同框架下的死锁与线程池饥饿
本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。
2026-05-04 14:11:46
158
原创 LLM 算法岗 | 八股问答()· 强化学习与 RLHF
服务员(事件循环)负责接待顾客(请求),如果某位顾客点菜后需要等厨房做菜(I/O等待),服务员不会傻等,而是先去接待其他顾客。它的核心是“非阻塞”:当一个请求在等待I/O(比如查数据库、调外部API)时,事件循环(Event Loop)会去处理其他请求,而不是干等着。这意味着,如果你的async函数里干的是CPU密集型的活儿(比如复杂的计算、图像处理),那它依然会阻塞整个事件循环,其他请求照样排队。简单总结:I/O密集型用async,CPU密集型用多线程/多进程,混合型任务两者结合。
2026-05-04 13:52:34
222
原创 龙虾白嫖指南,请查收~
这个要看资源的定义:如果只是管理内存资源,那么这样做是没有问题的,至少是安全的。而关于拷贝语义,绝大多数 C++ 程序员应该都知道这个问题:当在类对象中管理资源时,编译器生成的默认拷贝行为是“浅拷贝”,可能导致双重释放、内存泄漏等问题,因此需要自定义拷贝构造函数和拷贝赋值运算符来实现“深拷贝”的行为。首先要说明的是,要做的不是完整的封装 Hugging Face tokenizers 的 C 的 FFI(Foreign Function Interface)接口,而是封装自己需要的接口就可以了。
2026-05-04 13:28:08
220
原创 记一次综合型流量分析 | 添柴不加火
ax2.scatter(sales_2022, y_pos, s=120, color='#4C72B0', alpha=0.9, label='2022年', zorder=2, edgecolors='white', linewidth=2)进一步,我们还可以给哑铃图排序,按照增长由快到慢给各个品类排序,这样自然形成从"下降最显著"到"增长最显著"的连续谱,模式自动显现,无需刻意寻找。这样改造后,由上到下的哑铃,越来越短(也就是增长越来越慢),最底部的那个是负增长,用了红色来标注。
2026-05-03 20:41:12
301
原创 基于File-Based App开发MVP项目
Apache SeaTunnel PMC Member 对这个提议提出一些疑问,比如这种集成属于哪一层级,对多引擎兼容性的考量,类型转换的准确性等,并根据社区设计规范,要求发起者提交一份正式的设计文档(Design Document)。目前,Apache SeaTunnel 中的许多非关系型连接器(如 Elasticsearch、向量数据库和数据湖引擎)要求用户在作业配置中显式定义完整的列 Schema。先来看看提交这个 Issue 的作者是为什么想到这个点子的,以及他初步的核心设计概念。
2026-05-03 20:20:50
179
原创 记一次综合型流量分析 | 添柴不加火
langchain专门用于构建LLM大语言模型,其中提供了大量的prompt模板,和组件,通过chain(链)的方式将流程连接起来,操作简单,开发便捷。response = chain.invoke({"topic": "Python", "concept": "列表"})response = chain.invoke({"topic": "Python", "concept": "列表"})这是模型需要直接回答或处理的问题。("system", "你是一个精通{topic}的资深技术专家。
2026-05-02 16:28:02
210
原创 基于File-Based App开发MVP项目
Apache SeaTunnel PMC Member 对这个提议提出一些疑问,比如这种集成属于哪一层级,对多引擎兼容性的考量,类型转换的准确性等,并根据社区设计规范,要求发起者提交一份正式的设计文档(Design Document)。目前,Apache SeaTunnel 中的许多非关系型连接器(如 Elasticsearch、向量数据库和数据湖引擎)要求用户在作业配置中显式定义完整的列 Schema。先来看看提交这个 Issue 的作者是为什么想到这个点子的,以及他初步的核心设计概念。
2026-05-02 16:13:42
166
原创 Triton + RISC-V
/ 配置静态资源路径。当添加了特定的Starter POM后,springboot会根据类路径上的jar包来自动配置bean(比如:springboot发现类路径上的MyBatis相关类,springboot会自动配置MyBatis相关的bean)。这些注解通常用在自动配置类上,以确保只有在特定条件满足时才会应用相应的配置。
2026-05-01 15:16:57
356
原创 “INMS: Memory Sharing for Large Language Model based Agents“ 论文笔记
在实际使用时,用户只需要输入该 Skill 的功能描述、使用场景以及示例用法,系统便可以自动生成对应的 Skill 说明文档、描述信息等配套内容。docx 技能的描述示例:"全面的文档创建、编辑和分析功能,支持修订追踪、评论、格式保留和文本提取。当 Claude 需要处理专业文档(.docx 文件)时使用,包括:(1) 创建新文档,(2) 修改或编辑内容,(3) 处理修订追踪,(4) 添加评论,或任何其他文档任务"。在编辑(新生成或现有的)技能时,请记住该技能是为另一个Claude实例使用而创建的。
2026-05-01 14:54:27
212
原创 Triton + RISC-V
/ 配置静态资源路径。当添加了特定的Starter POM后,springboot会根据类路径上的jar包来自动配置bean(比如:springboot发现类路径上的MyBatis相关类,springboot会自动配置MyBatis相关的bean)。这些注解通常用在自动配置类上,以确保只有在特定条件满足时才会应用相应的配置。
2026-04-30 17:05:34
337
原创 “INMS: Memory Sharing for Large Language Model based Agents“ 论文笔记
在实际使用时,用户只需要输入该 Skill 的功能描述、使用场景以及示例用法,系统便可以自动生成对应的 Skill 说明文档、描述信息等配套内容。docx 技能的描述示例:"全面的文档创建、编辑和分析功能,支持修订追踪、评论、格式保留和文本提取。当 Claude 需要处理专业文档(.docx 文件)时使用,包括:(1) 创建新文档,(2) 修改或编辑内容,(3) 处理修订追踪,(4) 添加评论,或任何其他文档任务"。在编辑(新生成或现有的)技能时,请记住该技能是为另一个Claude实例使用而创建的。
2026-04-30 16:43:52
166
原创 Triton + RISC-V
Free Spire.Doc for Python 是免费 Python 文档处理库,无需依赖 Microsoft Word,支持 Word 文档的创建、编辑、转换等操作,其中内置的 Markdown 解析能力,能高效实现 Markdown 到 Doc/Docx 格式的转换,且兼容常见的 Markdown 语法(标题、列表、图片、链接等)。这是一段普通段落,支持**粗体**、*斜体*、`行内代码`,以及[超链接](https://www.google.com/)。路径:{output_path}")
2026-04-29 16:20:06
344
原创 “INMS: Memory Sharing for Large Language Model based Agents“ 论文笔记
在实际使用时,用户只需要输入该 Skill 的功能描述、使用场景以及示例用法,系统便可以自动生成对应的 Skill 说明文档、描述信息等配套内容。docx 技能的描述示例:"全面的文档创建、编辑和分析功能,支持修订追踪、评论、格式保留和文本提取。当 Claude 需要处理专业文档(.docx 文件)时使用,包括:(1) 创建新文档,(2) 修改或编辑内容,(3) 处理修订追踪,(4) 添加评论,或任何其他文档任务"。在编辑(新生成或现有的)技能时,请记住该技能是为另一个Claude实例使用而创建的。
2026-04-29 16:01:09
165
原创 SpringCloud进阶--Sentinel 流量防卫兵
将 Excel 转换为 TXT 不仅是格式的简单转换,更是实现数据自动化流程的重要环节。数据清洗与预处理: 将复杂格式的 Excel 数据转换为 TXT,作为其他数据分析工具(如Spark、Hadoop)的输入源,进行更深层次的处理。配置管理: 将 Excel 中维护的系统配置、参数表等导出为 TXT 格式,便于脚本直接读取,同时更适合使用 Git 等工具进行版本管理。自动化报告生成: 从 Excel 模板中提取数据,生成纯文本格式的报告摘要,方便邮件发送或系统集成。# 将工作表内容保存为TXT文件。
2026-04-28 14:46:24
253
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-28 14:23:44
372
原创 SpringCloud进阶--Sentinel 流量防卫兵
将 Excel 转换为 TXT 不仅是格式的简单转换,更是实现数据自动化流程的重要环节。数据清洗与预处理: 将复杂格式的 Excel 数据转换为 TXT,作为其他数据分析工具(如Spark、Hadoop)的输入源,进行更深层次的处理。配置管理: 将 Excel 中维护的系统配置、参数表等导出为 TXT 格式,便于脚本直接读取,同时更适合使用 Git 等工具进行版本管理。自动化报告生成: 从 Excel 模板中提取数据,生成纯文本格式的报告摘要,方便邮件发送或系统集成。# 将工作表内容保存为TXT文件。
2026-04-27 14:48:12
166
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-27 14:28:11
224
原创 SpringCloud进阶--Sentinel 流量防卫兵
Codex Agent 的真正价值,并不在于它“写代码有多快”,而在于它被设计成一个可以反复思考和行动的系统。这种“思考 → 执行 → 反馈 → 再思考”的循环机制,让复杂问题被自然拆解成一连串可验证的小步骤,也让错误变成系统的一部分,而不是失败的终点。Codex CLI 的核心不是“一次推理”,而是反复展开这个循环,模型不是直接给答案,而是每一轮只决定:我下一步该干什么?这就是 unrolling the loop 的含义:把模型原本“在脑子里一次性完成的思考”,拆成一轮一轮、可执行、可观察的步骤。
2026-04-26 13:57:08
293
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-26 13:27:01
352
原创 SpringCloud进阶--Sentinel 流量防卫兵
这种“思考 → 执行 → 反馈 → 再思考”的循环机制,让复杂问题被自然拆解成一连串可验证的小步骤,也让错误变成系统的一部分,而不是失败的终点。OpenAI的Codex CLI就是这一趋势的典型代表——一个跨平台的本地软件代理,能够在用户的机器上安全高效地生成高质量的软件变更。这就是 unrolling the loop 的含义:把模型原本“在脑子里一次性完成的思考”,拆成一轮一轮、可执行、可观察的步骤。把“刚刚发生的现实结果”,翻译成模型能理解的文字,再塞回 Prompt。
2026-04-25 16:33:16
299
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-25 16:12:39
309
原创 NetCoreKevin
对于支持事务的 Sink(如文件系统、Iceberg),需要一个全局的 Committer 来在 Checkpoint 完成时统一提交事务(二阶段提交),从而实现 Exactly-Once(精确一次)语义。支持列表: MySQL-CDC, PostgreSQL-CDC, Oracle-CDC, MongoDB-CDC, SQLServer-CDC, TiDB-CDC 等。无状态转换:大多数 Transform(如 Sql, Filter, Replace)是无状态的,即处理当前行不需要依赖其他行的数据。
2026-04-23 22:02:16
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅