为什么这个GC系统坏了?

时间:2011-04-01 20:02:36

标签: garbage-collection language-features compiler-theory

我想过一个GC,我看不出有什么重大缺陷,我想知道为什么它没有被更普遍地使用,或者为什么我没有听说过它的使用。

系统是:

  • 所有对象都附加了一个4字节的unsigned int计数器。 (可能是2个字节,我不知道。
  • 每当构造一个对象时,其计数器从1开始。
  • 当一个对象作为参数发送给一个函数时,它的计数器会递增。
  • 当一个对象到达一个不再在一个函数中使用的点时(可能是作用域的最后一个),它的计数器会递减。
  • 当对象的计数器达到零时,它将被删除,因为代码中没有位置被引用。

是否存在计数器出现故障的边缘情况?有哪些缺点和优点?

提前感谢您的协助。

1 个答案:

答案 0 :(得分:7)

它被称为reference counting.我建议阅读维基百科文章,因为它涵盖了优点和缺点。