Go语言技术文章
-
说明 Python subprocess.run 默认不会因非零退出码自动抛异常,重点讲清 check=True、CalledProcessError、捕获标准错误,以及启动失败与命令失败的区别。394 收藏 -
文章 · python教程 | 1星期前 | 缓存 · 垃圾回收 · python · 内存管理 · Python 内存缓存 对象生命周期 weakref.WeakValueDictionary 弱引用缓存
用一个对象缓存场景说明 Python WeakValueDictionary 如何不单独延长对象生命周期,覆盖最小写法、弱引用支持、缓存命中和回收边界,以及它与普通字典缓存的取舍。185 收藏 -
介绍 Python tomllib.loads 解析内存 TOML 字符串的方法,说明返回类型、嵌套字段、浮点数处理和 TOMLDecodeError 错误边界。318 收藏 -
介绍 Python dataclass 的 kw_only、KW_ONLY 与 field(kw_only=True) 写法,说明如何阻止位置参数,并处理继承、参数重排和 __match_args__ 边界。179 收藏 -
通过双 Handler 示例说明 logging Filter 如何补充记录字段,利用 Python 3.12 起支持的 LogRecord 替换实现输出端隔离,并解释格式器缺字段、extra 冲突与浅复制边界。426 收藏 -
文章 · python教程 | 1星期前 | 标准库 · 文件读取 · 编码 · python · Python pathlib UnicodeDecodeError Path.read_text 文本编码
Python pathlib 读取文本时,文件编码已知就显式传给 Path.read_text 的 encoding;遇到坏字节再按数据是否允许损失选择 errors。本文梳理默认编码、strict、replace、ignore 及 UnicodeDecodeError 的排查边界。101 收藏 -
LiteralString 不是运行时的新字符串类型,而是给静态类型检查器使用的字面量字符串边界。本文说明安全拼接、动态值分离、敏感 API 约束以及 Any 和 cast 带来的绕过风险。210 收藏 -
通过上传元数据示例说明 TypedDict 如何用 Required、NotRequired 和 total 标记部分必填字段,区分缺键与 None,并给出读取方式、版本注意及运行时边界。431 收藏 -
文章 · python教程 | 1星期前 | 队列 · Python教程 · asyncio · Python 消费者 asyncio.Queue Queue.shutdown QueueShutDown
Python 3.13 为 asyncio.Queue 增加 shutdown() 和 QueueShutDown。本文按新旧版本对比生产者停止、消费者排空、join 收尾和兼容降级,给出可直接改造的队列关闭写法。133 收藏 -
多个 asyncio 协程更新同一个计数时,读改写操作可能在 await 处交错,导致结果丢失。本文用 asyncio.Lock 和 async with 把共享更新放进同一临界区,并说明锁的释放、取消、线程同步和长耗时工作边界。296 收藏 -
用一个三项独立任务的汇总脚本说明 asyncio.gather 的异常返回模式,区分成功值、普通异常与子任务取消,并解释输入顺序、调用方取消传播和服务集成边界。449 收藏 -
使用 JDK 自带 jcmd 定位 Java 进程,执行 Thread.print 查看线程栈、状态与锁信息,并学习如何把快照落盘及正确解读 RUNNABLE、BLOCKED 和 WAITING。339 收藏 -
Java ProcessHandle.Info 可以读取进程的可执行命令、参数、命令行、启动时间、用户和 CPU 时间,但这些字段都可能因平台和权限返回空 Optional。本文用一段可复用的诊断代码解释字段差异和安全处理方式。205 收藏 -
讲清 JDBC 语句关闭与 ResultSet 的联动关系,以嵌套 try-with-resources 管理读取作用域,并说明借用连接、游标逃逸及主体异常与 suppressed 关闭异常的处理边界。208 收藏 -
Java Matcher 可以通过 region(start, end) 把搜索限制在原字符串的半开区间内。本文用具体示例说明 find、matches、lookingAt 的范围变化,并解释 anchoring bounds、transparent bounds 与 lookaround 的边界差异。247 收藏