Go语言技术文章
-
Go 的 Cmd.WaitDelay 用来限制子进程退出后 I/O 管道迟迟不关闭造成的 Wait 阻塞。本文用一个可运行的小实验拆开超时、管道关闭和退出状态的关系,并给出安全的错误判断方式。346 收藏 -
围绕冬日海岸灯塔制作一组原创竖屏锁屏壁纸,主图采用雾蓝海岸与远处灯塔,变体改用暖橙暮光和主体位置,配套完整中英文提示词、改词方法与直接下载链接。127 收藏 -
Go HTTP/1 服务处理流式上传时,如果边读请求体边写响应,默认行为可能让两边互相等待。本文用 ResponseController.EnableFullDuplex 拆开触发条件、最小写法、HTTP/2 差异和超时边界。100 收藏 -
快递一直显示派送中时,不要只盯着状态刷新。先联系承运企业确认末端网点和预计送达时间,再保存物流轨迹、客服工单和商品时效凭证;超过承诺仍未解决,可通过邮政业申诉服务平台或当地政务热线反映。489 收藏 -
用 structuredClone 复制前端表单草稿时,先分清深拷贝、不可克隆值和 transfer 转移语义,避免原缓冲区被置空或提交时丢失字段。449 收藏 -
Go 1.23 引入的 os.CopyFS 可以把 embed.FS 等 fs.FS 内容复制到磁盘,但不会覆盖已有文件。本文用一个配置目录示例讲清创建权限、覆盖错误、符号链接和可重复部署的核对方法。374 收藏 -
Golang · Go问答 | 1星期前 | 标准库 · go · 正则表达式 · 性能 · Go MustCompile regexp.MatchString regexp.Compile 并发复用
Go 的 regexp.MatchString 适合快速判断,但把 regexp.Compile 放进热循环会反复解析模式。本文对比一次编译、MustCompile、动态模式和并发复用的边界,给出可运行的性能与输入验收方法。382 收藏 -
io.MultiWriter 会按传入顺序逐个写入,某个 Writer 返回错误或短写入后立即停止,不会继续后面的目标。本文用日志分流场景拆解部分写入、ErrShortWrite、重试与一致性边界。279 收藏 -
Linux 服务启动失败时,先用状态命令确认状态,再用 journalctl -u 读取本次启动日志,区分配置错误、权限问题和依赖未就绪,最后用可回滚的 drop-in 配置完成验证。351 收藏 -
Python dataclasses 使用 list、dict 等可变默认值时,必须用 field(default_factory=...) 为每个实例创建独立对象。本文用配置示例验证共享问题、嵌套工厂和迁移检查点。479 收藏 -
Go HTTP 客户端偶发变慢时,只看总耗时很难判断问题在 DNS、建连、TLS 还是服务端首字节。本文用 net/http/httptrace 的 ClientTrace 串起关键回调,区分连接复用与新建连接,并给出可落地的耗时记录和排查边界。467 收藏 -
文章 · java教程 | 1星期前 | Java · nio · 工程实践 · 文件属性 · 配置热加载 · java 配置文件 Files.readAttributes BasicFileAttributes fileKey
配置热加载不能只比较 lastModifiedTime。本文用 Java Files.readAttributes 读取 BasicFileAttributes,结合 fileKey、文件大小和时间戳,判断原文件被覆盖、替换或仅内容变化时应该怎么处理。414 收藏 -
Golang · Go问答 | 1星期前 | golang · slog · 日志排查 · 结构化日志 · Go 1.21 · 结构化日志 JSON日志 Go slog.WithGroup slog嵌套字段 日志属性
Go slog.Logger.WithGroup 用组名组织结构化日志字段,但空组名不会创建嵌套层,属性归属还会受到 Handler 处理规则影响。本文用 JSON 输出示例拆解 WithGroup、WithAttrs 和重复组名的边界。247 收藏 -
time.Duration 本质是纳秒数量的 int64 别名。参与整数除法时结果会向零截断,先明确单位和余数,再决定是否转换为浮点或保留纳秒精度。242 收藏 -
Go 接收多种 JSON 事件时,不必一开始把所有 payload 解成 interface{}。用 json.RawMessage 保留原始 JSON,再按 kind 分流解析,可以减少无效结构体和类型断言;但它仍然持有字节数据,不能替代大小限制、深拷贝和错误校验。421 收藏