Go语言运行时中有没有自动回收对象并触发清理回调的机制?请结合 runtime 包说明其原理和使用注意事项。
考察说明
考察对 Go 对象生命周期管理、终结器(finalizer)机制的理解与应用边界
回答思路
- 指出 Go 通过 runtime.SetFinalizer 提供对象终结器机制
- 说明终结器在对象不可达且回收前由 GC 调度的原理
- 列举使用注意事项:不可复活对象、不可依赖执行时机、避免循环引用
- 结合实际场景说明合理用途与替代方案(如手动 Close)
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。