09 abril, 2010

Thread Garbage Collector

Thread Garbage Collector

Thread = Hilo de Ejecución

En C++ necesitamos declarar explícitamente tanto el constructor como el destructor, el primero nos sirve para inicializar los valores de los atributos de forma implícita y el segundo servía para limpiar la memoria y borrar los objetos que habíamos creado.
En Java es distinto, el constructor sigue implementándose igual pero ya no se implementa un destructor, por qué?, pues porque existe garbage collector (un Reciclador de Memoria Dinámica que recoge automáticamente todos los objetos que se salen del alcance ) gracias a este no es necesario preocuparse de liberar memoria, el reciclador se encarga de ello y como es un thread de baja prioridad, cuando entra en acción, permite liberar bloques de memoria muy grandes, lo que reduce la fragmentación de la memoria.


Después de destruir al objeto el garbage collector se encarga de devolver al sistema la memoria ocupada por el objeto eliminado.

Aquí un diagrama de como funciona el Garbage Collector de Java cuando un Objeto sale de Alcance:

Verde: Representa los objetos "vivos" que están en uso o activos.
Rojo: Objetos marcados para eliminación (generalmente cuando ya no se usan en el Programa).
Amarillo: Espacio de Memoria.

No hay comentarios.:

Publicar un comentario