FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Control de rendimiento
Posts: 632
Joined: Thu Jan 19, 2006 10:45 AM
Control de rendimiento
Posted: Thu Feb 28, 2008 06:05 AM

Hay algún control o función que le pueda añadir a mi programa para que muestre el estado de uso de la memoria gráficamente mientras se ejecuta el programa. Mi intención es poner un pequeño control tipo meter en la barra de mensajes que igual que cuando se pulsa control-alt-del aparezca el uso del rendimiento de la memoria para así poder controlar en todo momento cuando se consume mas memoria y poder así tomar decisiones al respecto.

Saludos



Andrés González desde Mallorca
Posts: 682
Joined: Tue Feb 14, 2006 09:48 AM
Control de rendimiento
Posted: Fri Feb 29, 2008 09:17 AM
Ayer cuando lo comentamos no tenia ni idea como hacerlo, pero luego recorde que con WMI se puede sacar toda la informacion del sistema, aqui te pongo un pequeño ejemplo.
El tema de ponerlo en pantalla graficamente te lo dejo para ti, lo puedes hacer con un timer y un meter.
#include "FiveWin.Ch"
FUNCTION main()
   LOCAL oLoc,oWmi,oLis, oObj
   LOCAL nTotal:=0,nLibre:=0
   oLoc := CreateObject( "wbemScripting.SwbemLocator" )
   oWmi := oLoc:ConnectServer()
   oLis := oWmi:ExecQuery( "SELECT * FROM Win32_ComputerSystem" )
   FOR EACH oObj IN oLis
      nTotal+=Val( oObj:TotalPhysicalMemory ) //Valor en Bytes
   NEXT
   nTotal:=nTotal/1024 //Convertimos a KB
   oLis := oWmi:ExecQuery( "SELECT * FROM Win32_OperatingSystem" )
   FOR EACH oObj IN oLis
      nLibre+=Val( oObj:FreePhysicalMemory ) //Valor en KB
   NEXT
   ? 'Memoria física total(KB):'+Str(nTotal),;
     'Memoria física libre(KB):'+Str(nLibre),;
     '% memoria ocupada       :'+Str(100-((nLibre*100)/nTotal))

RETURN NIL
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
Posts: 581
Joined: Tue Oct 11, 2005 11:28 AM
Control de rendimiento
Posted: Fri Feb 29, 2008 11:23 AM

Biel,

Esto podria ser una solución a lo que tenemos en FWH, que solo muestra 90% todo el tiempo? Parece interesante...

Saludos,

Kleyber Derick



FWH / xHb / xDevStudio / SQLLIB
Posts: 1286
Joined: Mon Feb 25, 2008 02:54 PM
Control de rendimiento
Posted: Fri Feb 29, 2008 11:26 AM

Biel, saudações amigo...

Biel, como saber as possibilidades de uso do:

ExecQuery( "SELECT * FROM Win32_ComputerSystem")

Digo quais outras chamadas de pode fazer?

Grato

ubiratanmga@gmail.com

FWH24.04
BCC7.3
HARBOUR3.2
xMate
Pelles´C
TDolphin
Posts: 632
Joined: Thu Jan 19, 2006 10:45 AM
Control de rendimiento
Posted: Sat Mar 01, 2008 08:01 AM

Gracias Biel eres un genio...

Voy a mirar como ponerlo en mi programa....

Saludos



Andrés González desde Mallorca
Posts: 632
Joined: Thu Jan 19, 2006 10:45 AM
Control de rendimiento
Posted: Sun Mar 02, 2008 08:33 AM

Kleyber, me habia fijado en tu comentario, ya que por casualidad un dia dando doble click en la barra de mensajes me cambiaba la barra titulo poniendo el estado de memoria, pero no se para que sirve pues nunca varia como tu dices ni la memoria cambia ni los recursos cambian siempre esta al 90%, si alguien sabe a que se debe. Tambien podria ser una solucion para poder instalar un indicador tipo meter aunque no se si en la barra titulo se puede hacer.

Saludos



Andrés González desde Mallorca
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Control de rendimiento
Posted: Sun Mar 02, 2008 11:23 AM

Andrés,

> siempre esta al 90%, si alguien sabe a que se debe

Se debe a que las funciones de Windows que se usaban en 16 bits, ya no funcionan en 32 bits y devuelven esos valores (absurdos).

La solución de Biel se ve muy interesante, lo que habría que valorar es si puede afectar al rendimiento global de la aplicación. Es decir, comprobar si al ser llamadas desde un timer, se ejecutan rápidamente y sin consumir mucha CPU y memoria.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 632
Joined: Thu Jan 19, 2006 10:45 AM
Control de rendimiento
Posted: Sun Mar 02, 2008 11:55 AM

Gracias Antonio, la solucion esta en realizar la misma operacion que con el doble click en la barra de mensajes. Utilizarlo solo cuando es necesario para ver como consumen la memoria los procesos que haces en un determinado momento y el resto que no actue para nada...

Saludos



Andrés González desde Mallorca
Posts: 326
Joined: Sun Oct 09, 2005 05:22 PM
Control de rendimiento
Posted: Mon Mar 03, 2008 06:18 PM
Hice pruebas y no veo cambios significativos, solo cuando se abren o cierran otras aplicaciones.



Descargas: http://www.despachoarteaga.com.mx/TG-Test.zip
Posts: 632
Joined: Thu Jan 19, 2006 10:45 AM
Control de rendimiento
Posted: Thu Apr 17, 2008 11:22 AM

Muy bueno Alfredo eso era lo que quería hacer, mira que empleo el tGraph (bueno mi versión era mas antigua) pero nunca se me había ocurrido hacerlo con esto.

Saludos



Andrés González desde Mallorca

Continue the discussion