Go语言技术文章
-
Go 的 sync.Mutex 可以使用零值,但首次使用后不能再复制。本文说明按值传参、range、返回值为什么会复制锁,并给出指针接收者、快照类型和 go vet 检查方案。233 收藏 -
Go 命令行表格不要手工补空格,使用 text/tabwriter 把每列写成制表符终止的单元格,再调用 Flush 输出。本文说明 NewWriter 参数、尾部制表符、中文宽度和适用边界。233 收藏 -
PHP 8.4 属性钩子适合集中处理单属性的清洗、类型边界和局部校验,但跨字段规则与数据库副作用不应塞进 get/set。本文用订单行示例拆分属性钩子、命名构造器和服务层的职责。233 收藏 -
Go 的 time.Parse 不使用 yyyy-MM-dd 这类占位符,而是用 2006-01-02 这组参考时间。本文从最小修复、错误判断、时区和格式化几个方面说明如何排查日期解析失败。233 收藏 -
OCR 结果进入 RAG 前不要只保留拼接文本。本文用统一文本块保存 source_id、页码、版面多边形和字符范围,并说明切块、向量召回与回答引用如何保持同一条证据链。233 收藏 -
Go 1.22 之后,ServeMux 不按注册先后决定路由,而是比较方法、主机和路径对应的请求集合。本文用字面量、单段通配符、尾部通配符和方法模式说明什么叫更具体,为什么有些模式会在注册时直接冲突。233 收藏 -
Go 的 gzip.Reader 默认会把多个 gzip 成员拼成一条解压流。需要逐个识别成员结尾时,应关闭 Multistream,在单成员读取到 io.EOF 后用 Reset 判断下一个成员,并区分正常结束、截断和校验错误。233 收藏 -
用 S ~[]E 接收普通或命名切片,再通过 func(E) R 做逐元素转换;同时说明数值类型参数可以显式转换,但 []E 不能整体隐式变成 []R。233 收藏 -
多层 bufio.Writer 中,外层 Flush 只会把缓存交给下一层;本文用 Buffered、底层写入计数和 Sync 区分每一层的状态,避免误判数据已经到达文件或已经落盘。233 收藏 -
文章 · 前端 | 4天前 | javascript · web components · custom elements · 前端排错 · Web Components Custom Elements attributeChangedCallback observedAttributes
attributeChangedCallback 不触发时,先检查 observedAttributes 是否监听了正确的 attribute,再确认代码改的是 DOM attribute 而不是只改 JavaScript property。本文用最小示例说明属性反射、初始值和回调重渲染的边界。233 收藏 -
矿山承包商换班时,交接的是具体作业、现场风险、控制措施和记录,不是把个人特种作业操作证或上岗资格交给下一班。本文按人员资质、作业任务、现场状态和留档四条线整理一份可执行的交接清单。233 收藏 -
Linux 排查监听端口时,使用 ss -lntup 查看 TCP/UDP 状态、监听地址和进程 PID,再按端口过滤并区分回环地址、通配地址、防火墙与上游网络问题。233 收藏 -
Go 的 QueryRow 查询不到记录时,错误会在 Scan 阶段以 sql.ErrNoRows 返回。本文从查询条件、errors.Is、NULL 字段、类型转换和上下文五个角度排查,区分无数据与真正的数据库故障。233 收藏 -
PHP 表单提交成功后如果直接返回结果页,用户刷新可能再次发起 POST,造成重复写入。本文从用户任务、交互拆解、组件实现、可访问性、性能检查和边界状态讲清 PRG 模式与闪存提示的落地方式。232 收藏 -
软件著作权申请人可以是与软件权利归属相符的自然人、法人或其他组织。本文用个人开发、公司开发、委托开发和合作开发四种场景,说明申请人选择、证明材料和常见填错点。232 收藏