Entrar
¿Nuevo usuario? Inscribirme
DesarrolloJava · Desarrollo de Software en Java/J++/J#
? ¿Ya estás suscrito? Entra a Yahoo!

Consejos

¿Sabías que...?
Podés añadir enlaces a sitios relacionados de tu grupo.

Mensajes

  Mensajes Ayuda
Avanzado
[Java] Uso de metodo Finalize()   Lista de mensajes  
Responder | Reenviar Mensaje #1259 de 25945 |
Hola a todos.
Tengo Objetos que manejan ciertos recursos, y lo necesito lograr que se liberen esos recursos cuando "estos objetos" se destruyan.
He pensado en extender el metodo protected void finalize() throws Throwable"
Leyendo el el api, me parece que es lo indicado.
    protected void finalize()
"Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. A subclass overrides the finalize method to dispose of system resources or to perform other cleanup." ...
 
Pero aparentemente no logro el efecto deseado, por lo que realize la siguiente clase como "prueba de concepto".
 
package pruebas;
 
public class Keyssi {
  public Keyssi() {
    X x = new X();  
    x = new X();   // Pierdo referencia anterior
    x = new X();   // Pierdo referencia anterior
  }
  public static void main(String[] args) {
    Keyssi keyssi1 = new Keyssi();
           keyssi1 = new Keyssi(); // Pierdo referencia anterior
           keyssi1 = null;         // Pierdo referencia anterior
  }
  class X {
    protected void finalize() throws Throwable{
      System.out.println("Finalize x");
      System.err.println("Finalize x");
      super.finalize();
    }
  }
}
 
Al ejecutar la clase no obtengo la salida "Finalize x".
¿Alguien podría explicarme por que / o como se logra la ejecución de codigo en un finalize()?
 
gracias.
 
----- Original Message -----
Sent: Wednesday, January 08, 2003 3:04 PM
Subject: [Java] Anuncio | Liberado JMichelleSui 0.9.7

Producto: JMichelleSui 0.9.7
URL: http://www003.upp.so-net.ne.jp/midori/JMichelle.html
Tipo: Código abierto
Descripción: JMichelleSui is a File Manager written in Java and SWT.


---
Este e-mail está certificado en origen como libre de virus.
Checked by AVG anti-virus system: http://www.grisoft.com?aff_id=1492
Version: 6.0.438 / Virus Database: 246 - Release Date: 07/01/2003


------------------------------
DesarrolloJava:
Desarrollo de Software en J2EE/Java
------------------------------
Direcciones de la lista:
Publicar un mensaje: DesarrolloJava@...
Suscribirse........: DesarrolloJava-Subscribe@...
Desuscribirse......: DesarrolloJava-Unsubscribe@...
Administrador......: DesarrolloJava-Owner@...
Página de la lista.: http://www.gruposyahoo.com.ar/group/DesarrolloJava
------------------------------
http://www.navegana.com/dinero/chanzes.html


Tu uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de Yahoo!.


Mar, 4 de Feb, 2003 10:52 pm

roybincg
Sin conexión Sin conexión
Enviar correo Enviar correo

Reenviar Mensaje #1259 de 25945 |
Desplegar mensajes Autor Ordenar por fecha

Hola a todos. Tengo Objetos que manejan ciertos recursos, y lo necesito lograr que se liberen esos recursos cuando "estos objetos" se destruyan. He pensado en...
Roybin Calderón Gu...
roybincg
Sin conexión Enviar correo
4 de Feb, 2003
10:50 pm

Si no me equivoco solo cuando el garbage collector de la máquina virtual se ejecute tendrás la ejecución del finalize. Una técnica que se puede emplear es...
Alejandro Sánchez
aachez
Sin conexión Enviar correo
5 de Feb, 2003
4:43 pm
Avanzado

Copyright © 2009 Yahoo! de Argentina S.R.L. Todos los derechos reservados.
Política de privacidad - Condiciones del Servicio - Reglas de la comunidad de Yahoo! - Ayuda