atexit

atexit 用于在进程退出前注册并执行清理逻辑。它适合处理关闭连接、刷盘、释放资源等“收尾动作”,但也伴随明显的平台和时机约束。

适合什么场景

  • 进程结束时关闭资源、写回状态或输出最后日志。
  • 希望把多个退出回调集中管理,而不是在各处重复拼接 defer 与信号处理逻辑。
  • 需要明确区分“正常退出”和“异常终止”时的收尾策略。

使用建议

  • 退出阶段最重要的是可靠、幂等、可容错,不要在回调里做复杂阻塞业务。
  • 该包存在平台相关行为差异,修改前应先看 atexit/AGENTS.md 和对应平台文件。
  • 进程内局部资源释放优先考虑 deferatexit 更适合应用级统一收尾。

相关文档