Me preguntaba si existe un método similar para los objetos Ruby, que los marca listos para la recolección de basura. Si creo 20,000 objetos y cada instancia tiene un contador, me gustaría que el objeto se marque para la recolección de basura cuando llegue a cero. Sé que esto es más o menos un enfoque de Java, pero no tengo suficiente experiencia con Ruby para entender cómo se podría hacer mejor.Ruby: Marque un objeto para la recolección de basura
¡Gracias por sus respuestas, comentarios y comentarios!
finalize no marca objetos para la recolección de basura, es un método que se ejecuta (aunque no hay garantía) justo antes de que el GC elimine el objeto – pablochan
Eso es bueno saber, gracias por señalarlo. ¿Hay algún método específico que destruya explícitamente el objeto o al menos ponga esto en movimiento? Me gusta la magia, pero también me gusta entender los trucos expuestos. – Shyam
Solo necesita eliminar todas las referencias al objeto e. gramo. si tiene una referencia x, simplemente la establece en nulo o tiene una variable local que se sale del alcance. Si no hay referencias, un objeto está disponible para el GC. – pablochan