错误处理
已收录文章:41篇
-
1. 高级用法 1.1. 错误处理 执行任何操作后,如果发生任何错误,GORM将其设置为*DB的Error字段 if err := db.Where("name = ?", "jinzhu").First(&user).Error; err != nil { // 错误处理... } // 如果有多个错误发生412 收藏
-
本文主要跟大家介绍了Golang巧用defer进行错误处理的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 问题引入 毫无疑问,错误处理是程序的重要组成部分,有效且优雅的处理错393 收藏
-
Go 的 sync 一次性初始化器适合把稳定结果封装成函数,但初始化失败也会被缓存。本文用配置加载和重试边界说明一次性函数、OnceFunc 与可重试初始化该怎么选。379 收藏
-
Golang · Go教程 | 2个月前 | 并发 · 错误处理 · go · Context · 排错 · Go 错误链 context.WithCancelCause context.Cause 取消原因一次请求提前结束时,ctx.Err() 往往只剩下 context.Canceled。用 context.WithCancelCause 和 context.Cause 可以保留真正的中断原因,并把它用于日志、指标和调用方处理;关键是区分父子 Context 的先后关系。366 收藏
-
Go 里遇到批量校验、批量关闭资源、批量处理任务时,不必只返回第一个错误。errors.Join 可以把多个 error 合成一个 error,同时保留 errors.Is、errors.As 的匹配能力,并且对 nil 有明确兼容规则。352 收藏
-
Golang · Go教程 | 3个月前 | 错误处理 · Context · 并发控制 · Go教程 · 并发控制 Go教程 context取消 context.WithCancelCause context.Causecontext.WithCancelCause 适合在请求链路中保留明确取消原因,让子任务不只知道 context canceled,还能知道是权限拒绝、上游失败还是主动终止。落地时要区分系统取消和业务错误。342 收藏
-
Golang · Go问答 | 2个月前 | 超时 · 错误处理 · go · Context · errors.Is Go context deadline exceeded WithCancelCauseGo 服务里看到 context deadline exceeded,不代表所有请求都只是超时。本文从上游主动取消、下游调用超时和本地截止时间三种现场出发,演示 WithCancelCause、Cause 与 errors.Is 的判断顺序,让日志能指出真正的中断来源。309 收藏
-
Go 的 context.WithCancelCause 能让调用方同时看到 context.Canceled 和真正的取消根因。本文用一个请求链示例拆解取消传播、Cause 读取、父子上下文竞速与错误包装边界。309 收藏
-
Golang · Go问答 | 2个月前 | 错误处理 · go · SQL · database/sql · 线上排查 · SCAN 查询结果 database/sql Go问答 rows.Next Rows.ErrGo 读取数据库结果时,rows.Next 返回 false 只能说明当前结果集没有下一行,不能直接当成查询成功。需要在循环后检查 rows.Err,并分别处理 QueryContext、Scan、Close 的错误,才能区分正常查完、数据库中断和结果读取失败。292 收藏
-
文章 · php教程 | 1个月前 | WEB开发 · 错误处理 · PHP · PHP 8.5 · 异常排查 · set_error_handler PHP 8.5 get_error_handler restore_error_handler 错误处理器PHP 8.5 新增 get_error_handler(),可以读取当前注册的错误处理器,适合排查框架中间件、临时兜底和恢复顺序问题。本文用一条被吞掉的警告为例,说明它与 set_error_handler()、restore_error_handler() 的配合方式及边界。292 收藏
-
Go 错误处理机制 Go 内置 errors Go 语言中的 error 就是普通的一个接口,表示值 // http://golang.org/pkg/builtin/#error // error 接口的定义 type error interface { Error() string } // http://golang.org/pkg/errors/er291 收藏
-
文章 · php教程 | 1个月前 | 错误处理 · 调试 · php教程 · PHP 8.5 · 错误处理 set_error_handler PHP 8.5 get_error_handler restore_error_handlerPHP 8.5 新增 get_error_handler(),可以直接读取当前用户错误处理器。文章用请求级日志采集场景拆解返回值、临时替换、restore_error_handler() 恢复和 PHP 8.4 兼容边界。284 收藏