gpt4 book ai didi

php - 使用 PHP 中的对象后是否需要销毁它们?

转载 作者:可可西里 更新时间:2023-11-01 13:39:13 26 4
gpt4 key购买 nike

对象销毁在 PHP 中有多重要?使用后销毁 PHP 中的对象是否重要?因为与 java 不同,PHP 没有垃圾收集器(我不知道)

最佳答案

在一般情况下您不需要销毁对象,PHP 当然does have a garbage collector .此外,大多数简单的脚本甚至都不需要一个,因为整个环境都会为每个 HTTP 请求拆除和重建;垃圾收集器帮助那些在处理单个 请求时内存不足的脚本。

一般情况的异常(exception)情况:

您可能希望“丢失”对消耗大量内存和/或包装非托管资源的对象的所有引用;这通常很容易

$largeObject = null; // reference to previous value lost

如果那是对 $largeObject 的最后引用,那么:

  • PHP 将立即调用析构函数(如果存在);如果您的脚本是长期存在的,您可能希望对包装非托管资源(例如数据库连接、套接字等)的对象执行此操作。
  • 对象占用的内存现在可以进行垃圾回收。但是,收集不会当场发生,而是在稍后需要更多内存的时候发生(尽管您可以随时调用 gc_collect_cycles 强制进行垃圾收集)。

当然,在“服务请求然后退出”的典型情况下,所有这些都没有考虑在内。

关于php - 使用 PHP 中的对象后是否需要销毁它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11170721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com