简述php的垃圾收集机制。

20 查阅
简述php的垃圾收集机制。

参考答案:

答案:
php中的变量存储在变量容器zval中,zval中除了存储变量类型和值外,还有is_ref和refcount字段。
refcount表示指向变量的元素个数,is_ref表示变量是否有别名。
如果refcount为0时,就回收该变量容器。如果一个zval的refcount减1之后大于0,它就会进入垃圾缓冲区。
当缓冲区达到最大值后,回收算法会循环遍历zval,判断其是否为垃圾,并进行释放处理。

机制