Recolector de basura

Autor: Louise Ward
Fecha De Creación: 5 Febrero 2021
Fecha De Actualización: 1 Mes De Julio 2024
Anonim
¡Un recolector de basura Finge ser un Debilucho, pero Resulta ser un Prestigioso Sicario!
Video: ¡Un recolector de basura Finge ser un Debilucho, pero Resulta ser un Prestigioso Sicario!

Contenido

Definición - ¿Qué significa Garbage Collector?

Un recolector de basura es una pieza de software que realiza la gestión automática de la memoria. Su trabajo es liberar cualquier memoria no utilizada y garantizar que no se libere memoria mientras todavía está en uso. Algunos lenguajes, como Java y .NET, cuentan con recolección automática de basura, mientras que otros, como C / C ++, requieren que el programador administre manualmente la memoria.


Una introducción a Microsoft Azure y la nube de Microsoft | A lo largo de esta guía, aprenderá de qué se trata la computación en la nube y cómo Microsoft Azure puede ayudarlo a migrar y administrar su negocio desde la nube.

Techopedia explica recolector de basura

La recolección de basura fue presentada por primera vez por el creador de Lisp, John McCarthy, para facilitar la administración manual de la memoria cuando se trabaja con el lenguaje Lisp.

Las tres técnicas principales utilizadas por un recolector de basura para realizar la administración automática de memoria son las siguientes:

  • Recuento de referencias: la referencia a cada objeto se cuenta mediante una variable de contador. Cuando el contador llega a cero, denota que el objeto ya no es necesario y, por lo tanto, se recicla.
  • Marcar y barrer: se realiza un recorrido recursivo de todos los objetos accesibles en todas las regiones de datos y se marcan los objetos accesibles. Los objetos sin marcar se reciclan.
  • Detener y copiar: el montón de memoria se divide en dos secciones: una sección que contiene los objetos y una sección vacía donde los objetos se transfieren (copian) si se encuentran marcados. Los objetos sin marcar en la primera sección se reciclan vaciándolos.

Cuando se ha liberado un bloque de memoria asignado a un puntero / objeto, el puntero / objeto debe restablecerse a un valor nulo; de lo contrario, está colgando, es decir, apunta a un bloque de memoria no válido.


La recolección de basura ayuda a reducir errores y riesgos de seguridad causados ​​por punteros colgantes y problemas de pérdida de memoria.

Las desventajas de usar un recolector de basura incluyen la sobrecarga adicional en recursos y rendimiento. La ejecución de un recolector de basura también puede ralentizar el sistema y, por lo tanto, disminuir su rendimiento.