Ir al contenido


Foto

Forma correcta de cerrar un programa?


  • Por favor identifícate para responder
11 respuestas en este tema

#1 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 08:24

Tengo un programa que trabaja con firebird 2.1 - zeos y delphi 7. Este programa realiza unos querys a una base de datos que esta ubicada en un servidor. Los querys se desplegan por medio de un dbgrid y de un listbox.

Para cerrar el programa que cosas debo tener en cuenta, porque he notado que a veces se queda en la lista de procesos del task manager.

La idea es saber si debo liberar algo de la memoria, cerrar los querys, apagar la conexion, etc.


PD.  Lo que se presenta en listbox, cada que tiempo debe limpiarse y si estos datos ocupan mucha memoria.
      ya que los datos que se presento en el listbox van de manera secuencial, es decir van aumentando de uno        en uno y no habia pensado que talvez debo darle un clear, cada cierto tiempo.


gracias de antemano

  • 0

#2 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 08 agosto 2009 - 08:31

Hola
Yo los query los abro y los cierro continuamente, lo mismo con los form, trato de que no consuman memoria.
normalmente con un close se tendria suficiente para que el programa termine, si hay algo que se esta ejecutando es por que no se cerro antes.
Podrias usar un:

delphi
  1. Aplication.termintate;


En vez del close.
Saludos

  • 0

#3 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 10:35

Gracias Caral por tu respuesta.

Sobre el asunto de los listbox, ya que estoy acumulando datos en el, que tanta memoria consumen y si debo darles un clear cada cierto tiempo.
  • 0

#4 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 08 agosto 2009 - 10:38

¿Cómo llenas el listbox? ¿con querys?, ¿siempre son los mismos datos o son diferentes?.

Saludos.
  • 0

#5 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 10:49

los lleno con un query, los datos son diferentes, se va llenando ejemplo:

-llego el evento 1 se presenta en el listbox, llego el evento 2, se presenta en el listbox, pero el evento 1 sigue en el listbox y asi sucesivamente se va llenando.
  • 0

#6 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 08 agosto 2009 - 10:50

Ok, o sea, que estás validando para que no se repitan los eventos, si es así­, no creo que sea necesario el clear en el listbox.

Saludos.
  • 0

#7 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 11:25

Pero si subo con las flechas del listbox, puedo ver los datos anteriores. En que lugar estan guardados esos datos, para que siempre esten disponibles ahi. No estan ocupando memoria?
  • 0

#8 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 08 agosto 2009 - 11:39

¡Claro!, como todo, no hay de qué preocuparse, tengo entendido que un ListBox ocupa mucho menos memoria que un DBGrid ;).

Saludos.
  • 0

#9 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 11:54

gracias enecumene por tus respuestas


Mi preocupacion viene porque es un programa que esta destinado a estar abierto todo el tiempo, es decir por las 24 horas del dia, 365 dias al año y quiero saber si la acumulacion de datos en el listbox me causaria algun problema.

El Dbgrid no me preocupa porque el query que lo llena, esta mostrando solo los eventos con los cuales el operador
no ha trabajado, que normalmente seran pocos.



  • 0

#10 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 08 agosto 2009 - 01:03

Sobre el asunto de los listbox, ya que estoy acumulando datos en el, que tanta memoria consumen y si debo darles un clear cada cierto tiempo.


Mi preocupacion viene porque es un programa que esta destinado a estar abierto todo el tiempo, es decir por las 24 horas del dia, 365 dias al año y quiero saber si la acumulacion de datos en el listbox me causaria algun problema.


En principio un listbox consumirá tanta memoria como texto tenga acumulado. Si son enormes, consumirán mucho, pero aunque el texto realmente no es un gran devorador de memoria, el problema adicional es la incomodidad de manejar esos listbox por parte del usuario al que terminarán pareciéndole infinitos.

Analiza como llenas esos listbox, si son necesarios tantos datos o si por el contrario son superfluos y se puede y debe prescindir de los mismos. Sobre todo piensa lo que pensará el usuario.

Saludos.
  • 0

#11 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 08 agosto 2009 - 04:19

gracias escafandra, realmente no hace falta que haya mas de 50 registros en el listbox.


  • 0

#12 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 08 agosto 2009 - 04:24

gracias escafandra, realmente no hace falta que haya mas de 50 registros en el listbox.


Pues si eso se va a mantener así­ siempre, no debes preocuparte por el tema.  ;)

Saludos.
  • 0




IP.Board spam blocked by CleanTalk.