Hola amigos, como ando peleado con los recursos, liberación de memoria, etc, etc,etc ... me vendría genial saber cuánto memoria está utilizando mi aplicación (desde la misma aplicación, claro).
¿Alguna función que me informe de esto?
Gracias!
FUNCTION Main()
? WorkingSetPrivate()
RETURN NIL
//-----------------------------------------------------------------------------
FUNCTION WorkingSetPrivate(cName)
/*Biel Maimo 2016*/
LOCAL oLocator,oWmi,oList, oProc
LOCAL aList:={}
IF cName==NIL
cName := SubStr(hb_ProgName(),Len( cFilePath( HB_ProgName() ))+1)
cName := Left(cName,Len(cName)-4)
ENDIF
//--
oLocator := CreateObject( "wbemScripting.SwbemLocator" )
oWMI := oLocator:ConnectServer()
oList := oWmi:ExecQuery( "select * from Win32_PerfRawData_PerfProc_Process WHERE name='"+cName+"'")
FOR EACH oProc IN oList
AAdd( aList, { oProc:Name,oProc:WorkingSetPrivate} )
NEXT
RETURN Val(aList[1,2]) / 1024
karinha wrote:Biel, cual és el comando equivalente en xHarbour de hb_ProgName()? Gracias, saludos.
#include "FiveWin.ch"
FUNCTION Main()
? WorkingSetPrivate()
RETURN NIL
//-----------------------------------------------------------------------------
FUNCTION WorkingSetPrivate(cName)
/*Biel Maimo 2016*/
LOCAL oLocator,oWmi,oList, oProc
LOCAL aList:={}
IF cName==NIL
#IFDEF __XHARBOUR__ // Qual e o equivalente em xHarbour?
cName := SubStr(HB_ARGV( 0 ),Len( cFilePath( HB_ARGV( 0 ) ))+1)
cName := Left(cName,Len(cName)-4)
#ELSE
cName := SubStr(hb_ProgName(),Len( cFilePath( HB_ProgName() ))+1)
cName := Left(cName,Len(cName)-4)
#ENDIF
ENDIF
//--
oLocator := CreateObject( "wbemScripting.SwbemLocator" )
oWMI := oLocator:ConnectServer()
oList := oWmi:ExecQuery( "select * from Win32_PerfRawData_PerfProc_Process WHERE name='"+cName+"'")
FOR EACH oProc IN oList
AAdd( aList, { oProc:Name,oProc:WorkingSetPrivate} )
NEXT
RETURN Val(aList[1,2]) / 1024
karinha wrote:Biel, una duda: el resultado és en: Bytes, Mega Bytes? Ó Giga Bytes? gracias, saludos.
...
Val(aList[1,2]) / 1024 //
Por favoroList := oWmi:ExecQuery( "select * from Win32_PerfRawData_PerfProc_Process WHERE name='"+cName+"'")
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: Google [Bot] and 88 guests