atexit
atexit 用于在进程退出前注册并执行清理逻辑。它适合处理关闭连接、刷盘、释放资源等“收尾动作”,但也伴随明显的平台和时机约束。
适合什么场景
- 进程结束时关闭资源、写回状态或输出最后日志。
- 希望把多个退出回调集中管理,而不是在各处重复拼接
defer与信号处理逻辑。 - 需要明确区分“正常退出”和“异常终止”时的收尾策略。
使用建议
- 退出阶段最重要的是可靠、幂等、可容错,不要在回调里做复杂阻塞业务。
- 该包存在平台相关行为差异,修改前应先看
atexit/AGENTS.md和对应平台文件。 - 进程内局部资源释放优先考虑
defer;atexit更适合应用级统一收尾。