知识卡片
Finalizer不是析构保证
内容
Finalizer 在对象被 GC 时执行关联函数,效果类似析构,但触发时机依赖垃圾回收,不能承担确定性资源释放。发散:文件句柄和锁应显式关闭,不要托付给 GC。
参考来源
- 位置:《Go语言入门到实战(共3册)》第46章《Go语言学习笔记:第21章 析构》(源文件:_epub-src/text/part0127.html)
- 结论依据:原文围绕“对象被垃圾回收时执行一个关联函数”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的语言/工程结论,并补充了边界或实践启发。
- 原始内容:其主要用途是在对象被垃圾回收时执行一个关联函数,效果如同OOP里的析构方法(Destructor Method)。