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

C++ Discussion :

garbage collector - algorithmes


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 217
    Par défaut garbage collector - algorithmes
    bonjour, dans un projet je doix realiser un garbage collector, j ai cru comprendre qu'il y a plusieurs algorithme, lequel me conseillez vous ???
    Merci

  2. #2
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Tu peux donner plus de détails ?
    Qu'est-ce que tu as déjà fait ? Qu'as-tu lu sur le sujet ?

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 217
    Par défaut
    Alors voila je sais que pour creer un grabage collector, il y a deux phase,
    1 il faut trouver les objets inutilisés
    2 récuperer l espace libéré par construction d'une liste ou par copie

    le truc c est que je ne sais pas comment commencer ???

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Tu peux commencer par regarder comment fonctionne le garbage collector de java....

    Il sagit de partir des "threads"...
    Chaque thread a une liste de reference (dans la pile), tous ces objets sont marqués "utilisés"
    De même ces objets utilisent des références sur d'autres objets qui sont a leur tour marqués "utilisés".

    Ensuite, tu peux peaufiner... à la manière de Java avec les classes qui héritent de "Reference", (WeakReference, PhantomReference, SoftReference).

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par défaut
    Salut,

    Citation Envoyé par asoka13 Voir le message
    dans un projet je doix realiser un garbage collector
    Il faut absolument que tu en écrives le code ou tu peux utiliser une bibliothèque externe ?

    MAT.

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    217
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 217
    Par défaut
    Je suis obligé d'écrire le code

  7. #7
    Membre éprouvé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Par défaut
    est particulièrement volubile sur le sujet...

    Pour commencer:
    http://fr.wikipedia.org/wiki/Ramasse-miettes

    La liste des liens externe te fera tomber en peu de temps sur:
    http://www.memorymanagement.org/articles/recycle.html

    Et en peu de temps également sur:
    http://www.cs.kent.ac.uk/people/staf....html#Software

    Bon lecture et bon courage !

  8. #8
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Les algorithmes de base c'est mark and sweep et stop and copy.
    C'est relativement simple à coder, à moins que tu tiennes à avoir une version incrémentale ou pire, concurrente.

    Après le fin du fin c'est de faire deux générations, une avec stop and copy pour les objets jeunes et l'autre avec mark and sweep pour les objets vieux.
    Tu peux aussi tenter de déplacer les données pour éviter la fragmentation, mais c'est assez problématique ce genre de trucs.

  9. #9
    Membre éprouvé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Par défaut
    Merci d'avoir donné les noms des algorithmes décrits dans la version américaine de wikipedia... Aucun intérêt dans la discussion en cours.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JVM] Java 5 et Garbage Collector(Parralèle)
    Par ssaunois dans le forum Général Java
    Réponses: 6
    Dernier message: 28/11/2005, 23h42
  2. [JVM]Garbage collector
    Par godik dans le forum Général Java
    Réponses: 5
    Dernier message: 07/10/2005, 09h12
  3. JPanel et Garbage Collector
    Par tck-lt dans le forum Agents de placement/Fenêtres
    Réponses: 9
    Dernier message: 25/07/2005, 18h03
  4. [JVM] les objets et le Garbage collector
    Par Kurdran dans le forum Général Java
    Réponses: 7
    Dernier message: 02/06/2005, 16h57
  5. [Language]Garbage collector
    Par GETah dans le forum Langage
    Réponses: 2
    Dernier message: 23/03/2005, 15h18

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