Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

VB Memoria

Estas en el tema de VB Memoria en el foro de Visual Basic clásico en Foros del Web. Muy buenas, quisiera agradeceros de antemano vuestra ayuda. Tengo el siguiente problema y me gustaría que me echaráis una mano: Tengo varias estaciones de trabajo ...
  #1 (permalink)  
Antiguo 04/03/2009, 06:22
 
Fecha de Ingreso: marzo-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
VB Memoria

Muy buenas, quisiera agradeceros de antemano vuestra ayuda.

Tengo el siguiente problema y me gustaría que me echaráis una mano:

Tengo varias estaciones de trabajo en las que se opera 24 h al día. El problema es que despúes de 20 o 30 h de trabajo continuo con el mismo programa, aparece un error de fallo de memoria y se bloquea la estación obligando a resetear la máquina.

Inspeccionando he llegado a la conclusión que la maquina falla al llegar a 1600 MB de memoria (de 2000 disponibles).

Me gustaría un codigo vbs que fuera llenando paulatinamente la memoria del equipo para poder comprobar a que niveles exactamente el equipo falla y si puedo encontrar alguna relación en esto.

Me sería realmente útil alguna progrmacion en Vbs que chequeara la memoria y si esta pasa de un límite que la refresque o vacíe.



Muchísimas gracias de antemano por vuestra ayuda.
  #2 (permalink)  
Antiguo 04/03/2009, 09:00
 
Fecha de Ingreso: febrero-2009
Ubicación: Villa Ocampo - Santa Fe
Mensajes: 100
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: VB Memoria

bien.....no creo que pase por eso amigo.....cuentame un poco mas acerca de tus terminales de trabajo....cuantas son y como estan configuradas las redes y con que pc's cuentas......creo que no es el pc.....pero si necesitas algun liberador de memoria bajate el tune up 2008....una vez que lo tengas te paso el parche para que lo hagas legal
  #3 (permalink)  
Antiguo 04/03/2009, 09:07
 
Fecha de Ingreso: marzo-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: VB Memoria

Muy buenas, en primer lugar, gracias por la respuesta.

Intentaré explicarte aunque no es fácil, se trata de un entorno industrial bastante particular.

son unas 5 estaciones de trabajo, Con dos tarjetas de red, una de ellas esta enlazada con la red de planta y la otra al sistema de control distribuido de la fábrica.

Creo que esto no tiene que ver con el problema, hay más áreas con la misma disposición y no hay problema.

El problema es cuando despúes de operar durante muchas horas, la memoria alcanza los 1,6 Gb de los 2 disponibles. En ese momento salta un error de fallo de memoria y falla la aplicación.

El programa lo necesito para intentar reproducir el problema rapidamente y no tener que esperar 1 día para poder estudiarlo.

No puedo poner software externo para vaciar la memoria, como mucho un script y de manera provisional.

Gracias de nuevo
  #4 (permalink)  
Antiguo 04/03/2009, 11:33
 
Fecha de Ingreso: febrero-2009
Ubicación: Villa Ocampo - Santa Fe
Mensajes: 100
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: VB Memoria

bien...entonces deberiamos ver tambien tu gestor de base de datos....Para ese tipo de trabajo necesitas emplear el sql server 2000 y hacer los insert updates y demas con procedimientos almacenados para liberar a la aplicación de hacerlos y delegar la responsabilidad al mortor de base de datos....otra cosita....las consultas sql consumen muchos recursos de memoria.....asi que por mas que tengas 2gb de ram la aplicación te va a volver el sistema inestable por falta de ram......lo que puedes hacer en ese caso configurar un servidor único solo con sistema operativo y nada mas.....obviamente la red y la base en esa luego poner la base y que las demas terminales llamen a esa base.....yo trabajo en una empresa del Chaco y tuvimos ese problema en Papelera Libertad pero era por la cantidad inmensa de datos que se mandaban a la base...insert update y consultas nos bloqueaba el switch y la aplicación se volvia instable y saltaba errores por todos lados...tambien nos dublicaba los comprobantes o se cruzaban los datos fue un desastre...pero se lo solucionó colocando procesadores grandes...dejando un server principal y llamndolo desde las terminales esclavas....es todo un tema el tuyo....googlea un poco tal vez encuentres algun código para liberar el ram.....
espero que por lo menos te sirva algo de lo que te comenté......y si no mil disculpas
me interesó mucho tu tema...cuentame como te fue...no olvides que en lo que puedo te ayudaré como toda la cominidad que integra este foro
exitos
  #5 (permalink)  
Antiguo 04/03/2009, 22:25
 
Fecha de Ingreso: enero-2007
Ubicación: Tingo María - Perú
Mensajes: 399
Antigüedad: 17 años, 3 meses
Puntos: 13
Respuesta: VB Memoria

Puede que este hilo te ayude:
http://www.forosdelweb.com/f69/vb6-l...emoria-355404/
__________________
Vivir para ser buenos y ser buenos para servir mejor.
  #6 (permalink)  
Antiguo 05/03/2009, 03:31
 
Fecha de Ingreso: marzo-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: VB Memoria

Muchas gracias por interesaros por mi problema:

intentaré ser mas claro. El entorno de trabajo esta bastante "encorsetado" y no puedo meter programas externos, como mucho algun script para ayudarme a diagnosticar el problema.

El sistema debe funcionar sin ningun tipo de programa de liberación de memoria o derivados, necesito los scripts para ayudarme a detectar el error y corregirlo.

Es un sistema de control implantado en muchas plantas industriales del mundo, con una metodología muy estricta (estoy seguro que eres consciente de la importancia de esto).
  #7 (permalink)  
Antiguo 05/03/2009, 03:59
Avatar de culd  
Fecha de Ingreso: noviembre-2003
Mensajes: 959
Antigüedad: 20 años, 5 meses
Puntos: 19
Respuesta: VB Memoria

Cita:
Iniciado por alfonsoj Ver Mensaje
Es un sistema de control implantado en muchas plantas industriales del mundo, con una metodología muy estricta (estoy seguro que eres consciente de la importancia de esto).
Si vos lo desarrollaste, no veo problema que puedas tener para encontrar al foco del error...

Si es un software de esa magnitud, debes ser muy buen programador.
  #8 (permalink)  
Antiguo 05/03/2009, 04:55
 
Fecha de Ingreso: marzo-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: VB Memoria

Cita:
Iniciado por culd Ver Mensaje
Si vos lo desarrollaste, no veo problema que puedas tener para encontrar al foco del error...

Si es un software de esa magnitud, debes ser muy buen programador.
No soy para nada el programador, soy el ingeniero comemarrones de turno
  #9 (permalink)  
Antiguo 05/03/2009, 13:03
Avatar de culd  
Fecha de Ingreso: noviembre-2003
Mensajes: 959
Antigüedad: 20 años, 5 meses
Puntos: 19
Respuesta: VB Memoria

Cita:
Iniciado por alfonsoj Ver Mensaje
soy el ingeniero
Con mas razon, debe ser una pabada pa vos
  #10 (permalink)  
Antiguo 06/03/2009, 02:11
 
Fecha de Ingreso: marzo-2009
Mensajes: 5
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: VB Memoria

Cita:
Iniciado por culd Ver Mensaje
Con mas razon, debe ser una pabada pa vos
Te agradezco la suposición, pero está claro que agoté muchos recursos y soy consciente de que aqui hay mucho más nivel en programación de la que puedo conseguir yo solo.
  #11 (permalink)  
Antiguo 06/03/2009, 03:32
Avatar de culd  
Fecha de Ingreso: noviembre-2003
Mensajes: 959
Antigüedad: 20 años, 5 meses
Puntos: 19
Respuesta: VB Memoria

Cita:
Iniciado por alfonsoj Ver Mensaje
Te agradezco la suposición, pero está claro que agoté muchos recursos y soy consciente de que aqui hay mucho más nivel en programación de la que puedo conseguir yo solo.
Bueno, que tipo de aplicacion es la que hace "tildar la maquina"

Una aplicacion de vb?...

Lo que esta haciendo es seguramente redimensionando un vector o matriz muy grande, guardando X informacion (no la conozco por que no mensionas su funcionamiento)...

Entonces es obvio que la maquina no utiliza volcado de memoria virtual, ya que una sola aplicacion es la que lo esta causando.

En fin, dudo que la aplicacion que este causando esto este desarrollada en VB, ya que el manejo de memoria en redimensiones de matrices es muy pobre, asi que un soft de VB dudo que sature la memoria...

Ya te digo, debe ser que esta redimensionando constantemente y no hace limpieza, supongamos que hace relevamiento de informacion, la almacena en memoria y no limpia la informacion vieja, entonces pasa eso. En ese caso creo que no podrias hacer nada por que los programas que sirven para limpiar la memoria lo que hacen es reordenar utilizando la memoria virtual, cosa que no vas a poder hacer en este caso al ser una sola aplicacion en ejecucion.

EDITO: El clasico overflow
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:14.