PHP高级工程师面试题及详细答案(职场实战版)
一、PHP核心高阶基础(必考)
1、详细说说PHP的垃圾回收机制(GC),什么时候触发回收?
参考答案:
PHP7+的GC核心是针对循环引用的内存回收,普通变量、无循环引用的变量,在离开作用域后会直接被引用计数释放,不需要GC介入。
1)引用计数基础:每个变量都有refcount,变量赋值+1,销毁/离开作用域-1,refcount=0立即释放内存。
2)循环引用问题:数组、对象内部互相引用,refcount无法归零,会造成内存泄漏,这是GC要解决的核心问题。
3)GC触发条件:
主动触发:调用gc_collect_cycles()
原创力文档

文档评论(0)