PHP的垃圾收集机制是怎样的?

php 2023年1月11日 625

PHP是一门托管型语言,在PHP编程中程序员不需要手工处理内存资源的分配与释放,这就意味着PHP本身实现了垃圾回收机制(Garbage Collection)

PHP使用的回收算法是引用计数法,每个php变量存在一个叫”zval”的变量容器。

一个zval变量容器,除了包含变量的类型和值,还包括两个字节的额外信息。第一个是”is_ref”,是个bool值,用来标识这个变量是否是属于引用集合(reference set)。

第二个额外字节是”refcount”,用以表示指向这个zval变量容器的变量(也称符号即symbol)个数。

把一个变量赋值给另一变量将增加引用次数(refcount)

当任何关联到某个变量容器的变量离开它的作用域(比如:函数执行结束),或者对变量调用了函数 unset()时,”refcount”就会减1

变量容器在”refcount”变成0时就被销毁


关注微信公众号『PHP学习网

第一时间了解最新网络动态
关注博主不迷路~

PHP学习网:站内收集的部分资源来源于网络,若侵犯了您的合法权益,请联系我们删除!
分享到:
赞(0)

文章评论

您需要之后才可以评论

PHP学习网

PHP学习网