错误处理
已收录文章:20篇
-
通过文件读取和服务层包装错误的例子,拆解 Go errors.As 的目标类型匹配、%w 包装链、指针与接口边界,并给出可运行的检查方式。224 收藏
-
解释 Go 接口值为什么看起来有指针却不等于 nil,并用动态类型、返回错误和类型断言示例定位这类问题。224 收藏
-
文章 · php教程 | 2个月前 | JSON · 错误处理 · PHP · PHP升级 json_decode PHP 8.3 json_validate JSON校验 JSON_THROW_ON_ERRORPHP 8.3 新增的 json_validate() 适合只判断 JSON 是否有效、并不需要马上读取内容的场景。本文用 webhook 入站校验拆开内存边界、json_last_error_msg、深度参数、UTF-8 与旧版本兼容实现。221 收藏
-
Go 的一次性初始化函数适合把昂贵加载包装成只执行一次的调用,但也会把第一次返回的错误一起缓存。本文用配置加载示例说明并发安全、失败重试和可测试边界。160 收藏
-
Go 标准库的一次性双返回值初始化模式,适合把值和错误一起缓存,并让并发调用者共享同一份结果。本文从配置加载与文件读取场景出发,说明它的执行次数、错误传播、panic 行为和不适用边界。156 收藏
-
sync.Once 只保证初始化逻辑最多执行一次,失败也不会自动重试。通过区分一次性成功初始化、可重试初始化和启动失败退出,避免把错误状态永久缓存进服务进程。133 收藏
-
context.WithCancel 只能表达主动取消,不能凭空产生超时。本文用一个可运行的 HTTP 调用场景拆开取消传播、deadline 和超时错误的边界,说明如何选择 WithCancel、WithTimeout 与 WithDeadline。132 收藏
-
Go database/sql 查询循环结束并不等于读取完整成功,本文从连接中断、Rows.Close 和事务提交三个现场拆开 Rows.Err 的检查边界,并给出可复现的代码与验收方法。102 收藏