Go语言技术文章
-
比较 Go 文件错误直接返回、文本转换、%w 包装与 errors.Join,给出保留写入和关闭错误的示例,并说明 errors.Is、errors.As 及资源清理的使用边界。373 收藏 -
time.Time.Year 返回公历年,而 ISOWeek 返回 ISO 8601 的周所属年与周号。本文用年初年末边界说明两者为何不同,并给出正确的周统计键和回归测试写法。373 收藏 -
Go bytes.Buffer 读取后 Len 会变小,但 Reset 仍能让同一个对象继续写入。本文拆开读取位置、未读切片、底层存储和复用边界,帮助你避免把 Bytes 返回值保存过久。372 收藏 -
Redis MEMORY PURGE 不是删除键,而是向底层分配器请求回收可释放页。本文解释 jemalloc 限制、执行边界、OK 返回值与后续诊断方法。372 收藏 -
使用 bytes.Buffer 时,Grow(n) 不是越大越好。本文按固定大小、近似大小和未知大小三种输入场景,说明如何估算 n,区分 len 与 cap,并给出避免频繁扩容和过度预分配的实用流程。372 收藏 -
bits.Mul64 的完整乘积等于 hi×2^64+lo,需要两个 uint64 或16字节保存。用固定大端编码和解码示例解释高低字布局,并用 hi!=0 判断结果能否装入 uint64。372 收藏 -
Java String.lines() 可以把包含 CRLF、LF 和 CR 的混合文本统一拆成不带行终止符的行流。本文说明它的识别范围、空文本与末尾换行边界,并给出按 LF 导出规范化文本的写法。372 收藏 -
Go 的 image.Decode 读取 GIF 时只返回第一帧,这是通用图片接口的明确语义。本文说明 image.Decode 与 gif.DecodeAll 的选择、GIF.Image/Delay/LoopCount 的对应关系,以及处理不可信 GIF 时如何先检查尺寸再从头解码。372 收藏 -
CNCF 项目毕业不只是一个新闻标签。本文用项目状态、技术成熟度、治理透明度、安全实践和生产采用五个视角,说明怎样区分公告事实与个人推断,并把毕业信号转成有边界的云原生试点判断。372 收藏 -
Linux getconf NAME_MAX 可以按指定目录查询单个文件名分量的长度上限。本文区分 NAME_MAX 与 PATH_MAX,解释数字、undefined 和路径错误的含义,并给出不创建探测文件的脚本用法。372 收藏 -
用 Go bufio.Reader.Peek 判断固定字节边界,区分完整输入、提前 EOF、ErrBufferFull 和底层读取错误,并给出安全消费与审计清单。371 收藏 -
说明 systemd.service 如何用 Restart= 设置默认自动恢复,再用 RestartPreventExitStatus= 排除指定退出码或信号,并区分主服务进程与 ExecStartPre 等控制命令的生效范围。371 收藏 -
PHP array_key_last 可以直接取得数组最后一个键,不会移动数组内部指针;空数组返回 null。本文说明数字键与字符串键的返回形式,并比较 end/key 组合的指针副作用。371 收藏 -
Go debug/dwarf 的 LineReader 可以用 Tell 保存当前行表位置,再用同一个 LineReader 调用 Seek 恢复。本文用一个紧凑示例说明保存时机、继续读取方式,以及 LineReaderPos 不能跨行表复用的边界。371 收藏 -
Go hash/crc32.MakeTable 可以把自定义 CRC 多项式转换成可复用的校验表。本文用 CRC32-Q 说明如何一次创建、重复计算,并区分多项式表示、哈希状态与安全摘要边界。371 收藏