PHP什么时候触发垃圾收集器?


When does PHP triggers the garbage collector?

我知道PHP使用的写时复制和引用计数,但我不知道垃圾收集器何时自然触发。

我的意思是,在变量的引用计数为0之后,GC在方法/函数结束后清理它吗?它会在循环结束后进行清洗吗?

好,希望问题足够清楚。

您可以通过配置值session.gc-maxlifetime, session.gc-probabilitysession.gc-divisor来'配置'垃圾收集器运行(来自RaggaMuffin-420的评论:这些只影响旧会话的清理)。

您可以在任何特定的实例中调用gc_collect_cycles()来强制垃圾收集,但通常将其视为代码气味(您开发的代码通常不应该依赖于垃圾收集器是否已经运行)。