Go语言技术文章
-
Go 1.23 的 slices.Chunk 返回的是原切片的连续子切片。本文用一个可运行例子说明修改分组结果为何会影响原切片,以及如何用 slices.Clone 建立独立副本。415 收藏 -
Golang · Go问答 | 3天前 | go · 路由 · net/http · ServeMux · 兼容性 · Go ServeMux PathValue http.Request.Pattern 路由模式
Go 1.22 引入增强路由后,http.Request.Pattern 可以告诉处理器究竟是哪条 ServeMux 模式命中了请求。本文用 GET /orders/{id} 实验说明 Pattern 与 PathValue 的区别、未命中时的空值行为,以及旧路由兼容判断。415 收藏 -
DISTINCT 可用于视图定义,但必须紧随 SELECT 后、禁止独立 ORDER BY;其作用于整行而非单字段,无法替代正确建模或实现按业务规则去重,且导致视图不可更新。DISTINCT 能直接用在视图定义里,但必须放对位置、避开 ORDER BY,且后续基本不能更新 创建含 DISTINCT414 收藏 -
MySQL 8.4 事件调度器适合承接数据库内的周期任务。本文用订单归档场景讲清 CREATE EVENT、执行记录、权限与停用检查,避免任务建好了却没人知道是否真的运行。414 收藏 -
文章 · java教程 | 1星期前 | Java · nio · 工程实践 · 文件属性 · 配置热加载 · java 配置文件 Files.readAttributes BasicFileAttributes fileKey
配置热加载不能只比较 lastModifiedTime。本文用 Java Files.readAttributes 读取 BasicFileAttributes,结合 fileKey、文件大小和时间戳,判断原文件被覆盖、替换或仅内容变化时应该怎么处理。414 收藏 -
sync.Cond 的 Broadcast 只负责唤醒等待者,不代表条件已经属于当前协程。本文从有界队列场景拆解 Wait、Signal、Broadcast 的配合方式,解释为什么必须在循环中检查共享状态,并给出可运行的 Go 验证代码、错误写法和回归清单。414 收藏 -
目录扫描不一定要为每个文件再做一次 Stat。本文从 os.ReadDir 返回的 DirEntry 出发,区分 Type 与 Info 的职责,并给出按目录项类型筛选、必要时再调用 entry.Info 的可复现写法。414 收藏 -
Go 1.25 为 testing.TB 增加 Output 方法。本文用一个并行子测试场景说明它与 Log 的关系、缓冲何时刷新,以及测试函数返回后为什么不能继续写入。414 收藏 -
文章 · python教程 | 5天前 | 并发 · 异常处理 · python · 异步编程 · Python CancelledError 结构化并发 ExceptionGroup asyncio.TaskGroup
asyncio.TaskGroup 会在首个非取消异常出现后取消同组任务,并在退出时抛出 ExceptionGroup。本文用批量抓取场景拆开异常聚合、取消传播和结果收集边界,给出可复现的验收代码。414 收藏 -
Go 的 regexp.FindAllStringSubmatchIndex 返回的是每个匹配和捕获组的字节偏移,不是字符下标。本文用中文输入、空捕获组和 ExpandString 拆开它的返回结构与边界。414 收藏 -
Golang · Go问答 | 4天前 | 标准库 · 单元测试 · 资源管理 · Go问答 · Go testing.T.Cleanup Cleanup 注册顺序 Go 子测试资源释放 testing 包
Go testing.T.Cleanup 采用后注册先执行的顺序,并且父测试的清理会等所有子测试完成后才运行。本文用嵌套测试和失败场景拆开注册时机、执行边界与资源释放写法。414 收藏 -
用 pathlib.Path.resolve 规范化用户提供的文件名,并通过根目录边界校验拦截 .. 与符号链接带来的目录穿越风险。414 收藏 -
Go 模块下载并不只是从代理拿一个 zip。本文从一次依赖校验异常出发,拆开 GOPROXY、go.sum、GOSUMDB、GOPRIVATE 的信任边界,给出公有依赖校验、私有模块配置和替换后复核的实战检查清单。413 收藏 -
处理大文件上传时,反复 bytes 切片会让内存峰值和复制次数一起上升。本文用 Python memoryview、bytearray 和 readinto 组织固定缓冲区,核对切片视图、尾块长度、复用缓冲区和异常恢复边界。413 收藏 -
本文介绍在 PHP 中如何通过索引精准修改多维数组中某个元素的指定键值(如为 $arr[1]['method'] 赋值),无需遍历,直接定位并更新,适用于配置项、表单数据补全等场景。 这段内容要讲清楚一件很实用的事:在 PHP 里,怎样通过索引直接、准确地修改多维数组里某个元素的指定键值,比如给 $413 收藏