- PHP 手册
- 函数参考
- 影响 PHP 行为的扩展
- Weakref
- WeakRef
Weakref::release
(PECL weakref >= 0.1.0)
Weakref::release — Releases a previously acquired reference
说明
public Weakref::release ( void ) : boolReleases a previously acquired reference, potentially turning a strong reference back into a weak reference.
The Weakref instance maintains an internal acquired counter to track outstanding strong references. If the call to Weakref::release() is successful, this counter will be decremented by one. Once this counter reaches zero, the strong reference is turned back into a weak reference.
参数
此函数没有参数。
返回值
Returns TRUE
if the reference was previously acquired and thus could be
released, FALSE
otherwise.
范例
Example #1 Weakref::release() example
<?php
class MyClass {
public function __destruct() {
echo "Destroying object!\n";
}
}
$o1 = new MyClass;
$r1 = new Weakref($o1);
$r1->acquire();
echo "Unsetting o1...\n";
unset($o1);
$o2 = $r1->get();
$r1->release();
echo "Unsetting o2...\n";
unset($o2);
?>
以上例程会输出:
Unsetting o1... Unsetting o2... Destroying object!
参见
- Weakref::acquire() - Acquires a strong reference on that object
User Contributed Notes
There are no user contributed notes for this page.官方地址:https://www.php.net/manual/en/weakref.release.php