Accueil Développement Qu'est-ce que la collecte des ordures (GC)? - définition de techopedia

Qu'est-ce que la collecte des ordures (GC)? - définition de techopedia

Table des matières:

Anonim

Définition - Que signifie Garbage Collection (GC)?

Le garbage collection (GC) est une approche dynamique de la gestion automatique de la mémoire et de l'allocation de segments qui traite et identifie les blocs de mémoire morts et réalloue le stockage pour la réutilisation. Le but principal de la récupération de place est de réduire les fuites de mémoire.

La mise en œuvre du GC nécessite trois approches principales, comme suit:

  • Mark-and-sweep - En cours lorsque la mémoire est épuisée, le GC localise toute la mémoire accessible, puis récupère la mémoire disponible.
  • Comptage de références - Les objets alloués contiennent un comptage de références du numéro de référence. Lorsque le nombre de mémoire est nul, l'objet est une ordure et est ensuite détruit. La mémoire libérée revient au tas de mémoire.
  • Collection de copie - Il existe deux partitions de mémoire. Si la première partition est pleine, le GC localise toutes les structures de données accessibles et les copie dans la deuxième partition, compactant la mémoire après le processus GC et autorisant une mémoire libre continue.

Certains langages de programmation et plates-formes avec GC intégré (par exemple, Java, Lisp, C # et .Net) gèrent automatiquement les fuites de mémoire, permettant une programmation plus efficace.

Techopedia explique Garbage Collection (GC)

L'approche dynamique de la récupération de place pour l'allocation automatique des segments de mémoire corrige les erreurs courantes et coûteuses qui entraînent souvent des défauts de programme réels lorsqu'elles ne sont pas détectées.

Parce qu'ils sont difficiles à identifier et à réparer, les erreurs d'allocation sont coûteuses. Ainsi, la récupération de place est considérée par beaucoup comme une fonctionnalité de langage essentielle qui facilite le travail du programmeur avec une gestion d'allocation de tas manuelle plus faible. Cependant, GC n'est pas parfait et les inconvénients suivants doivent être pris en compte:

  • Lors de la libération de mémoire, GC consomme des ressources informatiques.
  • Le processus GC est imprévisible, entraînant des retards de session dispersés.
  • Lorsque les références d'objet inutilisées ne sont pas supprimées manuellement, le GC provoque des fuites de mémoire logique.
  • GC ne sait pas toujours quand traiter dans les environnements de mémoire virtuelle des ordinateurs de bureau modernes.
  • Le processus GC interagit mal avec les systèmes de cache et de mémoire virtuelle, ce qui entraîne des difficultés de réglage des performances.
Cette définition a été écrite dans le contexte de la programmation générale
Qu'est-ce que la collecte des ordures (GC)? - définition de techopedia