WeakRef
PHP Manual

Weakref::release

(PECL weakref >= 0.1.0)

Weakref::releaseLibère une référence précédemment acquise

Description

public bool Weakref::release ( void )

Libère une référence précédemment acquise. Cela revient à modifier une référence forte en une référence faible.

L'instance Weakref maintient un compteur interne pour surveiller les références fortes. Si l'appel à Weakref::release() est un succès, ce compteur sera décrémenté de un. Une fois que ce compteur atteint zéro, la référence forte sera modifiée en référence faible.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Retourne TRUE si la référence a été précédemment acquise et ainsi, a pu être libérée, FALSE sinon.

Exemples

Exemple #1 Exemple avec Weakref::release()

<?php
class MyClass {
    public function 
__destruct() {
        echo 
"Destruction de l'objet !\n";
    }
}

$o1 = new MyClass;

$r1 = new Weakref($o1);

$r1->acquire();

echo 
"Libération de o1...\n";
unset(
$o1);

$o2 $r1->get();

$r1->release();

echo 
"Libération de o2...\n";
unset(
$o2);
?>

L'exemple ci-dessus va afficher :

Libération de o1...
Libération de o2...
Destruction de l'objet !

Voir aussi


WeakRef
PHP Manual