IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Suppression de références vers un élément à partir d'une structure de données


Sujet :

Algorithmes et structures de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    octobre 2018
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : octobre 2018
    Messages : 28
    Points : 18
    Points
    18
    Par défaut Suppression de références vers un élément à partir d'une structure de données
    Bonjour,

    l'explication suivante est-elle vraie ?

    un élément d'une structure de données ne peut êtres "supprimé" par le garbage collector que s'il n'est plus référencé. C'est à dire que plus aucun processus (quelque soit son état et sa localisation) ne "possède" de pointeur sur la case mémoire dans laquelle il est écrit.

    d'avance, merci.

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    septembre 2005
    Messages
    5 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : septembre 2005
    Messages : 5 022
    Points : 12 727
    Points
    12 727
    Par défaut
    Bonjour

    Le diable est dans les détails. Si A référence B et B référence A, alors aucune case ne devrait être libérable. Sauf que si le groupe {A;B} n'est référencé par rien, alors le garbage collector est capable de le supprimer.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    octobre 2018
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : octobre 2018
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Si A référence B et B référence A
    Si ma structure de données contient des type primitifs elle ne peut pas contenir un pointeur vers une autres "case" d'elle même ou d'une autres structure.

    Si ma structure de données contient/pointe des types composer ou des objets, alors elle contient des références/adresses et non les objet eux même.

    Maintenant la case A pointe vers l'objet/élément E. et la case B contient la même référence.
    Nom : ref-ad 1.png
Affichages : 47
Taille : 7,1 Ko
    ce n'est pas le cas que vous décrivez mais c'est pour expliciter.

    autres cas:
    Nom : ref-ad 2.png
Affichages : 48
Taille : 7,1 Ko
    la case A fait partie d'une structure de données qui référence des éléments. Tandis que la case B contient non pas une référence vers un élément mais vers une case qui contient une référence vers des éléments (en c se serait un pointeur de pointeur). (Corrigez moi si je me trompe).

    Enfin le cas que vous donner: A référence B et B référence A suppose que A et B contient des références non vers des objets mais vers des référence de référence d'objet. (A nouveau corrigez moi si je me trompe).

    Mais dans ce cas le garbage collector ne détecte-il pas que les références forme un cycle (quelle que soit sa longueur)?
    Il me semblait que le garbage collector se sert d'un automate pour définir quelle case mémoire désallouer et que les cycles était (relativement) facilement "perçu".

Discussions similaires

  1. Réponses: 17
    Dernier message: 02/07/2017, 21h38
  2. Réponses: 0
    Dernier message: 15/06/2017, 18h14
  3. Réponses: 2
    Dernier message: 18/05/2015, 23h09
  4. [MySQL] Suppression d'un élément à partir d'une liste déroulante
    Par aqr75 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/07/2009, 17h42
  5. Réponses: 4
    Dernier message: 13/05/2009, 14h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo