这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
《Python高级编程》3.1 CPython 执行模型与字节码
深入 CPython 执行内核:栈式虚拟机的求值栈与指令编码、dis 的栈效应计算、类与推导式的代码生成、异常表机制,以及 3.11+ 自适应专门化如何在运行时把 LOAD_ATTR 改写为 LOAD_ATTR_INSTANCE_VALUE,附 3.14 字节码变化实测对照。
posts
这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
深入 CPython 执行内核:栈式虚拟机的求值栈与指令编码、dis 的栈效应计算、类与推导式的代码生成、异常表机制,以及 3.11+ 自适应专门化如何在运行时把 LOAD_ATTR 改写为 LOAD_ATTR_INSTANCE_VALUE,附 3.14 字节码变化实测对照。
把抽取-转换-加载拼成一条可重跑、有依赖的数据管道:讲透幂等的三种落地手段,用标准库手写一个带拓扑排序与幂等状态的 DAG 调度器并真跑,再用 Polars 原生 Parquet 做分区落盘,最后收束成一份数据质量校验、水位线监控与可观测清单。
用同一份 50 万行真实数据实测 Polars 2.0:LazyFrame 惰性求值与查询计划、投影与谓词下推、多线程并行与流式引擎、表达式 API 与 pandas 的对照迁移,并给出同一任务的耗时对比,最后讲清什么时候该换、什么时候别换。
用 50 万行真实数据集实测 pandas 3.0 的性能陷阱:Copy-on-Write 成为默认后链式赋值的真实行为、SettingWithCopyWarning 的现状、dtype 与内存占用、apply 与向量化的耗时差距、groupby 与 merge 的坑,以及分块读取的取舍。
深入 Linux IO 栈:从 VFS、页缓存、文件系统到块层与设备驱动,讲解缓冲 IO 与直接 IO 的区别、blk-mq 与 mq-deadline/none 调度器、io_uring 异步 IO 原理、RAID/LVM 布局、iostat/iowait 指标解读、fio 压测方法,以及一套可落地的存储性能调优清单。
本节回答一个工程问题:泛型到底该不该用。文章对比具体类型、接口、泛型三种抽象,给出「该用泛型」与「不该用泛型」的判据,讲清运行时分派与编译期单态化的差别、Go 的单态化为何不是完全展开,并回看 TaskAPI 的 Page[T] 在什么场景下反而不如接口,最后给出一份决策清单收束第 9 章。
本节用三个泛型标准库重写 TaskAPI 的查询:slices 的排序/查找/删除/去重、maps 的 Keys/Clone/Equal、cmp 的 Compare/Or。文章给出三类函数的速查表,实测按标题排序后分页、按条件去重、把 map 索引摊成有序列表三段代码,并点出 SortFunc 不稳定、删除类函数会原地修改这两个高频陷阱。
本节给 TaskAPI 引入泛型:先看类型参数如何取代 interface{} 与类型断言,再讲约束——内置 comparable、标准库 cmp.Ordered 与自定义类型集,说明 ~ 近似元素为何让别名也能匹配。随后用泛型类型 Page[T] 表达「任意元素的分页结果」,并实测 Sum、Max 与 MyInt 三个例子。
Flutter FFI 全指南:dart:ffi 基础、C ABI 与内存指针、手写 binding vs ffigen、字符串与结构体传递、Isolate 异步调用、Rust 集成与打包安全实践。
本节把《方块冲刺》的碰撞检测从零写起:先用中心加半宽的 AABB、圆形、OBB 三套结构定下形状,再逐个实现 AABB 区间重叠、圆与圆的免开方判定、圆与 AABB 的最近点法,以及 OBB 的分离轴定理;最后用一张代价表说明各自适用场景,配 vitest 用例与 Cocos Creator 3.8 的 Collider2D 家族对照。
本节从《方块冲刺》里一个真实 bug 出发:不乘 dt 的移动在不同帧率下速度完全不同。我们推导为什么乘 dt 就帧率无关、dt 从哪里来、为什么要钳制,分清先乘后加与先加后乘,踩一遍跳跃用 dt 的坑,最后给出 Cocos Creator 3.8 的对照写法。
本节给《方块冲刺》搭起场景图:用 2×3 仿射矩阵合成父子变换,讲清局部矩阵与世界矩阵的差别,用脏标记做惰性重算,并按深度优先遍历节点树;同时给出 mini2d 的 Node 实现、vitest 验证,以及 Cocos Creator 3.8 中 Node 与 UITransform 的对照。
本节给 mini2d 补上 UI 布局层:用归一化锚点把控件钉在父容器的任意相对位置,做出百分比布局与横竖排列;再处理设计分辨率、等比缩放与刘海屏安全区。末节对照 Cocos Creator 3.8 的 Widget、Layout、UITransform、Canvas、view、ResolutionPolicy 与 SafeArea。
检索解决「怎么取」,本节解决「怎么存」。如果什么都往记忆里塞,召回会被噪声淹没;塞得太少又会漏掉关键信息。本节给 minagent 加上写入策略:用 should_write 判断什么值得记(偏好、事实、结论 vs 寒暄),用规范化字符串比较做 dedup 去重,用 slot 加时间戳做冲突消解让新信息覆盖旧信息,并真跑一组写入用例。
本节用中文二元组与英文词做词面匹配,并按相关度和时间排序。它是透明的教学召回器,不是跨用户的长期记忆服务。记忆命中不代表事实可信,最新时间也不代表正确。生产中先按租户与权限过滤,保留来源和更正机制;不可仅靠提示词阻止读取他人资料。
BufferMemory 和 SummaryMemory 用于文本上下文,不用于逐条裁剪带工具调用的运行历史;工具历史应使用第 6.2 节的完整轮次策略。摘要是有损模型输出,不保证最早事实永不丢失。get_context 把摘要标记为资料 user 消息,不能提升为 system 指令。长度截断也可能丢信息,业务重要事实应单独结构化保存并抽查。
深入讲解镜像签名与供应链验证:镜像篡改与混淆攻击威胁模型、Sigstore 与 Cosign 的 keyless 签名机制(Fulcio/Rekor/OIDC)、OCI 1.1 签名与 Referrers 规范、签名验证策略、Kyverno/Connaisseur 准入控制、SBOM 与 SLSA provenance 联动,以及密钥管理、轮换与离线等生产落地问题。
SIMD 是单核性能的最后堡垒。本文系统讲解 SIMD 原理与指令集版图(SSE/AVX/AVX-512/NEON/SVE)、编译器自动向量化的工作方式与优化指令、intrinsics 手写向量化、数据布局与内存访问、Roofline 视角的向量利用率、归约与循环向量化陷阱,以及可移植向量化与调优工具链。
深入讲解网络可观测性的三大数据来源:NetFlow/sFlow/IPFIX 流量采集、eBPF 内核数据面观测与协议级分析,涵盖采样原理、导出架构、指标计算与网络监控排障平台的整体设计。
梯度下降与深度学习优化器实战:梯度下降的直觉与收敛、学习率的角色、SGD 与批大小、Momentum 指数加权、AdaGrad/RMSProp 自适应、Adam 与 AdamW、学习率调度、优化器选择矩阵、优化器的工程实践与调试。