• 技术文章 >后端开发 >PHP7

    PHP 7.4中的弱引用(Weak References )

    藏色散人藏色散人2019-11-30 18:01:15原创1231
    PHP 7.4中的弱引用(Weak References )

    介绍

    弱引用允许程序员保留对对象的引用,而该对象不会阻止对象被销毁;它们对于实现类似缓存的结构非常有用。它们目前在PHP中得到了扩展支持。

    WeakRef目前的实现都是通过重载对象处理程序来实现的,最流行的实现(pecl-weakref)改变了分配给只读内存的堆栈,PHP 7.3将使其不可用。以其他方式更改对象处理程序的其他实现也存在出现故障的风险,并且依赖于未定义的行为和抛弃一致性。

    其他实现也是可能的,krakjoe/uref是一个使用低层特性(mprotect、0xCC、信号)来实现weakrefs的实现,但代价是可移植性、生成分段错误、保护内存和隐式信号处理程序限制。

    原则上,弱引用对象并不复杂,只需要(ab)使用Zend或下面的层,因为我们不直接支持它。

    建议

    我们以最简单的方式直接支持弱引用。

    API

    该API:

    final class WeakReference {
        public static function create(object $object) : WeakReference;
     
        public function get() : ?object;
    }

    向后不兼容的更改

    没有。

    翻译:https://wiki.php.net/rfc/weakrefs

    以上就是PHP 7.4中的弱引用(Weak References )的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:PHP 7.4
    上一篇:PHP 7.4中的数值文字分隔符(Numeric Literal Separator ) 下一篇:PHP 7.4允许从 __toString() 抛出异常
    大前端线上培训班

    相关文章推荐

    • PHP 7.4中的箭头函数(Arrow Functions)• PHP 7.4中的类型属性(Typed Properties)• PHP 7.4中的预加载(Opcache Preloading)• PHP 7.4中的数值文字分隔符(Numeric Literal Separator )

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网