【发布时间】:2015-09-09 04:16:10
【问题描述】:
一些较新的语言正在将 ARC 实现到它们的编译器中(Swift 和 Rust,仅举几例)。据我了解,这实现了与运行时 GC 相同的效果(将手动释放的负担从程序员身上移开),同时效率显着提高。
我知道 ARC 可能会成为一个复杂的过程,但随着现代垃圾收集器的复杂性,实现 ARC 似乎不再复杂。但是,仍然有大量的语言和框架使用 GC 进行内存管理,甚至以系统编程为目标的 Go 语言也使用 GC。
我真的不明白为什么 GC 比 ARC 更可取。我在这里遗漏了什么吗?
【问题讨论】:
标签: memory-leaks garbage-collection automatic-ref-counting