超时控制
已收录文章:56篇
-
Go 的 time.Timer 不是改一个时间数字那么简单:Reset 前要先处理已经到达的旧事件,重置后还要保证只有一条超时路径能结束本次等待。本文用可复现的请求超时流程说明 Reset、Stop、通道读取和 context 的边界。291 收藏
-
Python 异步接口用 asyncio.wait_for 设置超时后,日志里却还能看到后台任务继续运行,通常不是 wait_for 失效,而是任务引用、shield 或 finally 清理边界没有处理好。本文用可复现代码拆开超时取消语义,并给出资源回收和验证方法。158 收藏
-
接口能返回 200,不代表客户端真的能用。本文用 Go 标准库 httptest.NewServer 从零写一个小型接口烟雾测试器,逐步检查状态码、Content-Type、JSON 字段和超时,并给出适合 CI 的验收边界。385 收藏
-
Golang · Go问答 | 2个月前 | goroutine · HTTP · Context · 超时控制 · Go问答 · WithTimeout Go问答 context取消 QueryContext HTTP请求取消 goroutine退出Go HTTP 请求断开后,r.Context() 会收到取消信号,但服务端慢任务不会凭空停止。只有把 context 继续传给数据库、下游 HTTP 调用、消息消费和 goroutine,取消与超时才会真正变成资源释放动作。120 收藏
-
Golang · Go教程 | 2个月前 | Context · 超时控制 · Go教程 · Go context 请求超时 Transport http.Client Client.Timeout ResponseHeaderTimeoutGo HTTP 客户端超时不要只靠一个 context 或一个 Client.Timeout。更稳的做法是把总预算、连接、TLS 握手、响应头和读取阶段分开设置,再用错误判断和日志字段确认到底卡在哪一段。218 收藏
-
Golang · Go问答 | 2个月前 | goroutine · Context · 超时控制 · Go问答 · Go Goroutine 超时控制 context.WithTimeout 取消信号 协程泄漏 ctx.Donecontext.WithTimeout 只会在到期后关闭 Done 通道并返回取消原因,不会直接停掉 goroutine。Go 代码要把 ctx 传进阻塞调用,并在 select、循环和清理逻辑里主动响应取消信号。147 收藏
-
用 PHP 写一个小型 HTTP 探测器,重点不是只把远程接口请求通,而是给连接设置超时、拿到状态码、记录耗时和错误信息,并让接口返回可验收的 JSON。文章用原生 stream_context_create 串起入口接口、请求函数、日志文件和验收清单,适合放进定时任务或后台健康检查。289 收藏
-
Golang · Go教程 | 3个月前 | goroutine · Context · 超时控制 · Go教程 · 后端开发 · Go Goroutine context 超时控制 WithTimeout Done QueryContext本文用完整工作流讲解 Go context 超时控制:从 HTTP 入口创建超时预算,把 ctx 传给 DB 查询和远程请求,到 goroutine 监听 Done、及时退出并释放资源,最后给出验证和上线清单。166 收藏
-
Go 服务调用外部 HTTP 接口时,如果没有设置超时,慢接口可能让请求一直等待。本文从复现现象开始,逐步定位原因,并给出 Client.Timeout 与 context 截止时间两种可靠写法。115 收藏
-
讲解 Go CPU profile 和火焰图的阅读方法,用 flat、cum 和热点链路定位 CPU 瓶颈。593 收藏
-
说明 inuse_space、alloc_space 和对象生命周期的区别,帮助判断内存占用和分配压力。383 收藏
-
用 testing.B、benchmem 和 benchstat 对比优化前后数据,避免凭感觉判断性能收益。530 收藏