← 返回首页

PHP 的 GC 与 Java / Go 的 GC 有什么本质区别?

PHP 以引用计数为主,仅在处理循环引用时才启动追踪式收集(同步 stop-the-world)。

Java 以分代追踪式 GC 为主(G1/ZGC),Go 使用三色标记并发 GC。

PHP 的方案在短生命周期请求模型下效率很高——多数对象 refcount 归零即时释放,无需等 GC 周期;

但在长驻进程场景下不如 Java / Go 的并发收集器成熟。