Esto parece una pregunta simple, pero después de leer mucho sobre el tema, todavía no he encontrado una respuesta definitiva (tal vez porque es muy simple).
Mi pregunta es esta: cuando un recolector de basura compacta objetos en el montón, ¿cómo se actualizan las referencias a esos objetos en la pila? Se me ocurren dos posibles soluciones:
- Revise la pila (y las referencias en el montón) y actualice la referencia para apuntar a la nueva ubicación del objeto. En una analogía con la mudanza, esto sería como enviar una carta a cualquier persona que tenga su dirección y pedirles que actualicen su libreta de direcciones con su nueva dirección.
- Proporcione algún tipo de tabla de consulta. Esto sería como dejar una dirección de reenvío con la oficina de correos local.
¿Los recolectores de basura utilizan predominantemente uno de estos dos métodos? ¿Algún otro método? ¿Ambos?
fuente