Página 1 de 2
Uso da CPU aplicacao do GasPro
Enviado: 07 Mai 2011 02:29
por Alexandre Silva
Uma das inumeras vantagens que é apontado no Harbour é uso minimo da CPU..
Bem tenho 2 aplicacoes em Harbour.. .com a mesma forma de complicao com Hbmk2
Código: Selecionar todos
# para exec final
-oloja.exe
-inc
-prgflag=/l
-L\clipper5\lib
-lmylib
-lxhb
-lhbct
-lhbwin
-compr=def
-rebuild
loja.prg
loja1.prg
funcoes.prg
loja6b
loja6c
Uma feita na unha LOJA, e outra que é gerada pelo GASPRO bem maior..
Essa primeira usa proximo de 0 (zero) de CPU quando esta rodando e 0 se estiver parada
Na aplicacao do GASPRO , a CPU varia de 30 a 40 % e mesmo parada usa 30 % !!
Tem haver com o tamanho ?? A primeira, LOJA, tem 32 prg com 5000 linhas em media cada prg
a do GASPRO tem quase 300 prg com 700 a 1500 linhas cada
o Uso da CPU nao devia ser minimo ?? ou é assim mesmo
o flag -compr=def ajuda em alguma coisa ??
Uso da CPU aplicacao do GasPro
Enviado: 09 Mai 2011 22:01
por sygecom
Alexandre Silva escreveu:
Uma feita na unha LOJA, e outra que é gerada pelo GASPRO bem maior..
Essa primeira usa proximo de 0 (zero) de CPU quando esta rodando e 0 se estiver parada
Na aplicacao do GASPRO , a CPU varia de 30 a 40 % e mesmo parada usa 30 % !!
Está compilado com Harbour ou Clipper-GASPRO ?
Alexandre Silva escreveu:
Tem haver com o tamanho ?? A primeira, LOJA, tem 32 prg com 5000 linhas em media cada prg
a do GASPRO tem quase 300 prg com 700 a 1500 linhas cada
Não deveria ter problema não, eu tenho 259 prg e um EXE de 10MB e não tenho problemas.
Alexandre Silva escreveu:
o Uso da CPU nao devia ser minimo ?? ou é assim mesmo
Está parado ou processando algum relatorio ou rotina sua ? se tiver parado deveria está estancado no 0%
Alexandre Silva escreveu:
o flag -compr=def ajuda em alguma coisa ??
Apenas para diminuir o tamanho do EXE e mais nada, não diferencia no processamento nem na execução inicial. Esse comando usa o UPX
Uso da CPU aplicacao do GasPro
Enviado: 09 Mai 2011 23:47
por Alexandre Silva
Está compilado com Harbour ou Clipper-GASPRO ?
O LOJA é feito no clipper,puro, sem graficos, sem mouse, modo console, e compilado com Harbour
roda beleza em CDX quase sem uso da CPU
O outro sistema é em GASPRO e foi compilado com Harbour..usa em torno de 40 % de CPU mesmo parado no MENU principal..
Está parado ou processando algum relatorio ou rotina sua ? se tiver parado deveria está estancado no 0%
Como disse acima, parado, no menu para escolher uma opcao do menu, por exemplo.. usa 30 a 40 % da CPU..
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 07:33
por sygecom
É Alexandre, normal não é, tem algo errado ai, o que não sei. Tente mudar de compilador C, ou tente rever a lógica dos seus menus.
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 10:08
por asimoes
Alexandre,
O uso da função inkey pode gerar esse consumo veja:
Com consumo entre 1% e 3%
Código: Selecionar todos
DO WHILE .T.
nKey:=inkey(.1)
IF nKey = 27
EXIT
ENDIF
ENDDO
Com consumo > 40%
Código: Selecionar todos
DO WHILE .T.
nKey:=inkey()
IF nKey = 27
EXIT
ENDIF
ENDDO
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 10:14
por clipsis
Olá a todos!
Oi Alexandre, tudo bem? Espero que sim.
Ops! Não tinha visto a resposta do asimoes
Primeiro como você fez para compilar as "Funções" do GASPro ?
Se estiver usando a GASLIB.prg, elá tem um "bugzinho", quando se usa a função IN_KEY().
Segue abaixo:
Código: Selecionar todos
//-------------------------------------------------------------------
Function INKY(xArg1)
Local xVar1:= 0,xVar2,xVar3:= Seconds()
//Algodao bloqueou Do While (.T.)
//Algodao bloqueou xVar1:= InKey()
//Algodao bloqueou x:= "POEHORA"
//Algodao bloqueou &x()
//Algodao bloqueou If (xArg1 = Nil .OR. xVar1 # 0)
//Algodao bloqueou Exit
//Algodao bloqueou Else
//Algodao bloqueou If ((xVar2:= Seconds()-xVar3,xArg1 > 0 .AND. (xVar2 > xArg1 .OR. xVar2 < 0)))
//Algodao bloqueou Exit
//Algodao bloqueou EndIf
//Algodao bloqueou EndIf
//Algodao bloqueou EndDo
IF xArg1<>nil
xVar1:= InKey(xArg1) //essa linha n„o tinha
ELSE
xVar1:= InKey() //essa linha n„o tinha
ENDI
Return xVar1
Espero ter ajudado!
Abrs
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 10:18
por asimoes
Alexandre
Outra coisa que constatei:
MENU TO o consumo é <= 3%
GET / READ o consumo é <= 3%
ALERT() o consumo é <= 3%
Verifique se não há nenhum inkey() no seu código.
Fiz estes testes com o harbour compilado
http://sourceforge.net/projects/harbour ... e/download
[]´s
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 11:26
por Jairo Maia
Olá Pessoal,
Aplicações do Gas tem inkey "pra todo lado". Arriscaria dizer que são baseadas em inkey. Como o Alexandre disse, mesmo parada no menu usa 40%. Se o mouse está ativo, neste caso ficamos estacionados num DO WHILE, quando não, ficamos num INKEY(0). Ou seja, a aplicação sempre está usando o processador.
Duas perguntas:
1- Como é possivel alterar?
2- Qual a implicação na aplicação?
Compilado com Harbour, como já disse em outro tópico, me parece não alterar nada. Mas também gostaria de saber que implicação isso tem na aplicação.
Uso da CPU aplicacao do GasPro
Enviado: 10 Mai 2011 13:22
por Alexandre Silva
OPA

)
Mudei essa funcao do INKY() e o uso da CPU ta 0 ou proximo disso...que coisa !
Pra mim veleu...
Primeiro como você fez para compilar as "Funções" do GASPro ?
Que funcoes ? Clipsis eu compilo normalmente com o Harbour, nao fiz uma lib porque eventualveme estou fazendo ajustes naquele "lib" (algodao) que foi disponibilizada aqui.
Vc que esta usando o gaspro, esta usando NSX ou CDX ? já colocou no cliente pra valer ?? teve problemas com corrupcao de indices ?
Uso da CPU aplicacao do GasPro
Enviado: 31 Jan 2015 11:56
por clodoaldomonteiro
Amigos,
Também tenho problemas com meus aplicativos consumindo 100% da CPU e quando desativo a GetSys do GAS a CPU fica em 0%.
Gostaria de saber se vocês tem alguma solução para isso.
Uso da CPU aplicacao do GasPro
Enviado: 31 Jan 2015 14:31
por sygecom
Posta o GETSYS que está usando para analisarmos.
Uso da CPU aplicacao do GasPro
Enviado: 22 Mar 2015 08:39
por clodoaldomonteiro
Caro Leonardo,
Desculpe a demora na resposta, muito trabalho esse início de ano.
Segue em anexo a GetSys.prg que uso.
Caso queira, posso mandar uma aplicação com os fontes, ou até mesmo, você pode baixar uma executável no endereço: central.simplesinformatica.com
Uso da CPU aplicacao do GasPro
Enviado: 24 Mar 2015 19:52
por Itamar M. Lins Jr.
Tem como colocar um pequeno Prg (exemplo) p/ ser compilado com ela(getsys.prg) p/ testar ?
Cadê as funções: Q_TEC(0) e JOGANOBUFF... ?
Saudações,
Itamar M. Lins Jr.
Uso da CPU aplicacao do GasPro
Enviado: 24 Mar 2015 20:04
por Itamar M. Lins Jr.
Tentei fazer um teste aqui, e fica difícil se vc não tirar tudo que não é necessário para isolar o problema.
Código: Selecionar todos
C:\fontes\teste>hbmk2 main.prg GETSys.prg
Harbour 3.4.0dev (7ab8869) (2015-03-23 14:35)
Copyright (c) 1999-2015, https://github.com/vszakats/harbour-core/
Compiling 'GETSys.prg'...
Harbour 3.4.0dev (7ab8869) (2015-03-23 14:35)
Copyright (c) 1999-2015, https://github.com/vszakats/harbour-core/
Compiling 'main.prg'...
Lines 15, Functions/Procedures 3
Generating C source output to 'C:\Users\Itamar\AppData\Local\Temp\hbmk_tu9ug9.di
Done.n.c'...
Lines 1902, Functions/Procedures 25
Generating C source output to 'C:\Users\Itamar\AppData\Local\Temp\hbmk_tu9ug9.di
r\GETSys.c'... Done.
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x4f
8): undefined reference to `HB_FUN_CONTA'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x52
8): undefined reference to `HB_FUN_TAMANHOMSG'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x2a
8): undefined reference to `HB_FUN_DBOX'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x35
8): undefined reference to `HB_FUN_WVW_SETCLIPBOARD'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x41
8): undefined reference to `HB_FUN_LPAD'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x54
8): undefined reference to `HB_FUN_WVW_GETCLIPBOARD'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x55
8): undefined reference to `HB_FUN_WVW_PASTEFROMCLIPBOARD'
C:/Users/Itamar/AppData/Local/Temp/hbmk_tu9ug9.dir/GETSys.o:GETSys.c:(.data+0x6d
8): undefined reference to `HB_FUN_ALERTAM'
...
hbmk2: Hint: Add input file 'gtwvw.hbc' for missing Harbour function(s):
wvw_PasteFromClipboard(), wvw_GetClipboard(), wvw_SetClipboard()
hbmk2: Hint: Add input file 'hbct.hbc' for missing Harbour function(s): WBox()
hbmk2: Dica: Corrigir os nomes de fun├º├Áe(s) possivelmente digitado errado:
DBOX() -> WBox()
hbmk2: Erro: Referenciada, ausente, mas fun├º├Áes Harbour desconhecida(s):
CONTA(), TAMANHOMSG(), LPAD(), ALERTAM()
C:\fontes\teste>
Tem que colocar o código mínimo possível e auto compilável, para as outras pessoas possam testar.
Saudações,
Itamar M. Lins Jr.
Uso da CPU aplicacao do GasPro
Enviado: 24 Mar 2015 21:59
por Jairo Maia
Olá Clodoaldo,
Não baixei seu GetSys, mas tenho uma pergunta em função de ser um sistema que foi migrado do GasPro: Você está usando as funções do mouse?
Se sim, esse problema está na função MouseGet(), e não no GetSys.Prg.
Nota: O uso de 100% da CPU nesse caso é virtual. Se você abrir qualquer outro programa será liberado espaço para ele e vai funcionar normal. Há como consertar isso, mas depende de como está seus fontes. Se você desabilitar para teste o mouse em seu sistema, verá que o uso da CPU cai para Zero quanto ele estiver inoperante.