Zig 把内存分配器做成函数参数,作者赞其改变内存思维
arpit_bhayani · x · 2026-10-30
作者分享初学 Zig 的体验:Zig 没有隐藏分配,函数需要堆内存时必须把 allocator 作为参数传入,从签名即可看出谁在分配、由调用者决定内存来源。
几个亮点:
- arena allocator:处理请求时传入 arena,一次性释放所有临时分配,被调函数无感知,切换分配策略很容易
- defer / errdefer:清理代码紧邻分配处,scope 结束或出错时自动释放,不用记住每条退出路径
- testing allocator:追踪每次分配,测试结束时若有内存未释放直接判失败,把内存泄漏变成普通测试失败而非生产事故
作者认为 Zig 让内存成为一等公民,类似 Go 对错误的处理方式。
「编程与Agent」频道最新
- 作者自述:一年前手写代码成了 FrontierCS 2 第三难任务 — wzenus · 2026-10-30
- 三个开源 LLM 投票筛文献:15034 条记录自动评审出 489 项研究 — maier_ak · 2026-10-30
- 活体综述:LLM 投票筛文献,每月自动重跑保持常新 — maier_ak · 2026-10-30
- 资深从业者:把心思花在 eval 上,训练自然容易 — yunta_tsai · 2026-10-30
- Agent 身份管理平台 Mintive 融资 1100 万美元 — rohanpaul_ai · 2026-10-30
- 免费 Colab 一天从零训练 GPT 风格 LLM,开源教程走红 — Arindam_1729 · 2026-10-30