Página 1 de 1
Sistema rodando no windows 2000 está muito lento
Enviado: 26 Jan 2005 14:54
por binho_fasa
Caros amigos, tenho um sistema rodando no Windows 2000 Pro e está muito lento para processar, especialmente funções que realizam pesquisa em arquivos dbfs. Alguém tem alguma dica:
ps: Minha aplicação foi criada com Clipper 5.2e e blinker 7 e uso NTX.
[]´s
Enviado: 26 Jan 2005 15:11
por Clipper
Prezado Binho
Provavelmente você não está usando nenhuma função que libera o uso do processador, um programa em Clipper consome mais de 90% dos recursos do processador, para corrigir isso e diminuir o uso do processador você deve usar alguma função que faça isso, existem várias LIB´s que tem estas funções porém eu recomendo a TIMESLICE do colega Maligno ela foi a que teve melhor desempenho nos testes que fiz, baixando o uso do processador para uma média de 8%.
Você pode baixar ela no meu site ou no do colega Maligno.
No meu site ela está na Seçaõ Clipper - Objetos
Até logo.
Marcelo
Enviado: 26 Jan 2005 16:10
por vagucs
A melhor forma mesmo é compilar o sistema em xHarbour que ai fica 32bits puro e com a multitarefa controlada pelo sistema operacional diretamente, não necessitando mais da NTVM que é o emulador de DOS do Windows 200X e XP.
Enviado: 26 Jan 2005 23:14
por binho_fasa
Marcelo, obrigado pela dica, mas eu já tentei usar algumas funções de controle do processador, até mesmo a do próprio blinker, mas não resolveram no windows 2000.
Vagner, como posso migrar minha aplicação de clipper 5.2e para xharbour?
Eu já usei xharbour com hwgui e minigui e já tenho alguma noção, mas não sei como transportar os arquivos rmk, lnk. E como ficam as libs de terceiros que uso com o clipper, tipo a CA-tools.lib, iolib.lib, bemafi.lib?
Obrigado pela força.
Enviado: 27 Jan 2005 15:37
por vagucs
A CA tools já tem uma versão para xHarbour e a lib HBCOMM é bem semelhante a IOLIB, as rotinas da bematech você terá que usar uma libs que foi convertida para xHarbour disponível no grupo de xHarbour.
Qualquer coisa entre em contato por e-mail pois o fórum não está mais avisando quando os tópicos são respondidos.
Enviado: 28 Jan 2005 13:48
por Dudu_XBase
Boa Tarde Binho !
Inclua essa função no seu prg principal dosidle() ela ajuda a diminuir consideravelmente o uso da ntvdm.exe.
Linke junto com a sua aplicação o dosidle.obj que esta no link abaixo.
http://spravki.net.ru/files/utils/DOSIDLE.RAR
Verifique qdo vc estiver executando sua pesquisa compare o uso da cpu pelo monitor do sistema e verifique.
Seu micro esta em rede vc esta usando o programa pelo servidor ?
O problema pode tb estar relacionado a rede.
Outra solução de um problema que já passei, alguns softwares antivírus, contribuem para a queda de performance do sistema, na maioria dos casos reconfiguro o antivírus, eu inclui nas suas listas de excessões as pastas do sistema para seu residente não ficar achando q meu sistema é um vírus.
Enviado: 28 Jan 2005 18:01
por Clipper
Eu acho muito estranho porque meus sistemas eram muito lentos no NT,2000 e XP e depois de usar uma função que libera o uso do processador ficaram extremamentes rápidos (mais do que no 98,95 e ME inclusive), não sei exatamente o que está acontecendo com você, mas como você afirmou que já usou tal funções só me resta imaginar que o seu problema seja de configuração da máquina ou do sistema operacional. Sugiro que reincorpore tal função ao seu sistema e fça o teste que sugere o Dudu.
Até logo.
Marcelo
Sistema rodando no windows 2000 está muito lento
Enviado: 01 Fev 2005 17:24
por syda
Binho,
Se você trabalha em rede sugiro algo que melhorou a performance de meus aplicativos, rode o executável em cada uma das máquinas clientes e não no servidor, isto te dá um ganho de aproximadamente 30% no desempenho. O chato é que você terá que instalar as novas versões do executável em todos os clientes sempre.
Você postou que utiliza indices ntx, pense na possibilidade de usar cdx que vai melhorar outros 20% no desempenho.
Se ficar muito complicado para você migrar de ntx para cdx, crie indices locais (nas máquinas clientes), o Rochinha me deu esta dica e realmente faz diferença.
Abraços.
Shirley d'Almeida
