Les références circulaires en PHP

le 22/06/2007 à 20:04
Les références circulaires en PHP
Derick Rethans explique :

Les références circulaires ont été longtemps un problème en PHP. Elles sont liées au fait que PHP utilise un mécanisme d'allocation de mémoire à compteur de référence pour ses variables internes.Cela conduit à des problèmes pour les scripts qui s'exécutent longuement, comme un serveur d'applications ou la suite de tests eZ Components.

Mais tout le monde n'est pas au courant du fonctionnement des références circulaires, alors voici comment cela se passe.

- Circular References
- Les références

A lire également

PHP dispose d'un système de collecte de la mémoire inutilisée, qui supprime les objets dès que ces derniers ne sont plus utilisés. C'est à dire quand les données ne font plus partie d'aucune variable, PHP libère la mémoire.

Là où le bas blesse, c'est que si deux objets se référencent mutuellement, PHP n'est pas capable de l'identifier : dans ce cas, il continue de supposer que les objets sont utilisés, et il les conserve en mémoire. C'est ce que Alex Netkachov montre avec un petit script simple.

En bref : il faut éviter les références circulaires en PHP.

- Optimize PHP memory usage: eliminate circular references

Commentaires

Ecrire

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours