Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-09-2010
Avatar de Lord Delfos
Lord Delfos Lord Delfos is offline
Miembro
 
Registrado: ene 2008
Ubicación: Tandil, Argentina
Posts: 558
Poder: 19
Lord Delfos Va por buen camino
Una aclaración.

El administrador de tareas es relativamente una mala idea para ver el consumo de memoria. Esto se debe a la forma en la que la memoria se asigna y libera en Windows. Puede ocurrir (de hecho es prácticamente 100% del tiempo) que vos liberes la memoria desde tu programa, pero que realmente no se esté liberando por el sistema de memoria que usa Windows.

Lo más seguro creo que sería usar FastMM. Que es un manejador de memoria muy potente que, entre otras cosas, te dice cuando hay goteos de memoria. Si estás usando, creo recordar, versiones anteriores a Delphi 2010, podés agregarlo a la uses de tu DPR y listo (y preparate para llevarte una sorpresa ). En D2010 creo que ya viene incorporado así que no hay necesidad. Sólo tendrías que habilitarlo (supongo).

Otra cuestión, no pusiste el código que estás usando para liberar la memoria antes de crear un nuevo frame... Quizás está ahí el problema.

Saludongos.
Responder Con Cita
  #2  
Antiguo 18-09-2010
iktwo iktwo is offline
Miembro
 
Registrado: ago 2008
Posts: 22
Poder: 0
iktwo Va por buen camino
Gracias de nuevo por la respuesta, antes que nada mi código para liberar:
Código Delphi [-]
if ventana2<>nil then
     begin
       //ventana2:=nil;
       //ventana2.Free;
       FreeAndNil(ventana2);
     end;

Bueno he probado primero nil y luego free, así como también FreeAndNil, uso delphi 2010, y aunque se que el administrador de tareas no es lo mejor para analizar si se ha liberado o no, lo raro es que si creo el frame así

Código Delphi [-]
ventana1:=TFrame1.Create(self);

en vez de con nil, eso si me libera inmediatamente la memoria se refleja al instante en el adminsitrador de memoria, es por eso la duda.. claro que al crearlos con self no me deja crearlos 2 veces me dice que el nombre del componente ya existe..

Gracias!!
Responder Con Cita
  #3  
Antiguo 18-09-2010
iktwo iktwo is offline
Miembro
 
Registrado: ago 2008
Posts: 22
Poder: 0
iktwo Va por buen camino
Siento hacer doble post, no me dejaba editar el anterior, pues ya libera la memoria, lo he hecho con FreeAndNil pero el owner la propia forma e inmediatamente lo libera, Gracias por su ayuda!!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
crear MaterialLibrary dinamicamente Isuri Varios 13 22-04-2009 21:42:33
Crear Frame Dinámicamente chinchan C++ Builder 2 09-05-2008 14:07:08
crear componente de bd dinamicamente gushmaish Varios 2 01-03-2007 19:28:45
Crear RadioButtons dinámicamente Javi2 Varios 4 26-07-2004 17:27:00
crear popups dinamicamente. tango01 OOP 2 06-01-2004 16:33:03


La franja horaria es GMT +2. Ahora son las 16:00:10.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi