Compilei com Clipper 5.2 e ficou lento

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

sergiosistema
Usuário Nível 1
Usuário Nível 1
Mensagens: 38
Registrado em: 30 Dez 2013 01:05
Localização: fortaleza-ce

Compilei com Clipper 5.2 e ficou lento

Mensagem por sergiosistema »

Olá amigos, eu usava o clipper 5 e sempre instalei meu sistema em maquinas xp funcionando em vários micros pela rede e nunca tive nenhum problema, mas depois que compilei com o clipper 5.2, o mesmo sistema ao fazer as vendas está muito lento ou travando quase que sempre. isso ocorre mais quando duas máquinas estão realizando vendas ao mesmo tempo. já tirei os commits e nada.... o que pode ser?
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Compilei com Clipper 5.2 e ficou lento

Mensagem por Toledo »

Olá Sergio, a primeira coisa a fazer é verificar qual versão do Clipper 5.2 você tem ai, a melhor é a versão 5.2e. Para verificar a versão do Clipper é só digitar o comando abaixo no prompt do DOS:

CLIPPER X

Bom, com o comando acima o Clipper vai tentar compilar o arquivo X.PRG (este arquivo X.PRG não pode existir na pasta onde você está digitando o comando acima) e não vai encontrar, mas com isto você vai conseguir ver a primeira linha de comando da compilação, onde está a versão do Clipper. Por exemplo vai aparecer a seguinte mensagem:
Clipper (R) 5.2e
Copyright (c) 1985-1995, Computer Associates International, Inc.
Microsoft C Floating Point Support Routines
Copyright (c) Microsoft Corp 1984-1987. All Rights Reserved.
319K available
Compiling X.PRG
Cannot open, assumed external

No code generated
Neste exemplo a primeira linha consta Clipper (R) 5.2e.

Se a sua versão do Clipper não for a 5.2e, então faça o download do Clipper 5.2e que está na seção download aqui do fórum:
https://pctoledo.org/forum/fileba ... t=c&page=1

Agora sobre a lentidão no Windows, pode ser que seja o problema do uso de 100% do processamento de programas Clipper com o Windows XP.

Neste caso, você terá que colocar o comando FreeTSlice() no início do PRG principal do seu programa e compilar o arquivo TIMESLIC.OBJ junto com os arquivos OBJs do seu programa. Para copiar o arquivo TIMESLIC.OBJ, veja a mensagem abaixo:
https://pctoledo.org/forum/viewto ... LIC#p72926

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
sergiosistema
Usuário Nível 1
Usuário Nível 1
Mensagens: 38
Registrado em: 30 Dez 2013 01:05
Localização: fortaleza-ce

Compilei com Clipper 5.2 e ficou lento

Mensagem por sergiosistema »

Olá Toledo, obrigado por responder.... eu estou utilizando a versão 5.2e que baixei aqui mesmo no site há mais ou menos um mês atrás pra fazer a leitura de peso da balança toledo prix3 utilizando a CT.lib. Eu já compilo com o timeslic e sobre o comando FreeTsLice também utilizo na primeira linha do fonte principal, só que sempre usei com o numeral 20... Exemplo: FreeTsLice(20). Se eu compilar no clipper antigo não vou ler o peso mas em compensação o sistema roda normalmente sem lentidão na venda de produtos, e essa lentidão só ocorre quando os dois micros estão simultaneamente realizando vendas, mas se eu deixar o micro 2 fora da operação de cadastro de ítens na venda, também funciona normal e isso é só no 5.2e. ... eu já até troquei de maquinas achando que podia ser o xp mal instalado, mas não é porque acontece a mesma coisa. Se alguem tiver uma luz, eu agradeço.
lucimauro
Usuário Nível 3
Usuário Nível 3
Mensagens: 465
Registrado em: 21 Set 2004 21:02
Localização: Sobral-CE

Compilei com Clipper 5.2 e ficou lento

Mensagem por lucimauro »

Poste tambem como voce ta fazendo para linkar seu programa


qual linkeditor esta usando?
Rtlink ou Blinker?
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Compilei com Clipper 5.2 e ficou lento

Mensagem por Eolo »

utilizando a CT.lib
Talvez seja preciso atualizar as LIBs. No caso da CT, existe a CTP52 e CT52 (modo protegido ou não) para o Clipper 52 (este assunto foi inclusive abordado há uns dias aqui no Forum). Além da CT, procure atualizar também outras LIBs que vc usa, tipo NANFOR, CPMI, OSLIB etc.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Compilei com Clipper 5.2 e ficou lento

Mensagem por Pablo César »

sergiosistema escreveu:instalei meu sistema em maquinas xp funcionando em vários micros pela rede
..//..
está muito lento ou travando quase que sempre. isso ocorre mais quando duas máquinas estão realizando vendas ao mesmo tempo. já tirei os commits e nada.... o que pode ser?
Oi Sergio, execute este aplicativo em todas as estações XP e veja se melhora.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
sergiosistema
Usuário Nível 1
Usuário Nível 1
Mensagens: 38
Registrado em: 30 Dez 2013 01:05
Localização: fortaleza-ce

Compilei com Clipper 5.2 e ficou lento

Mensagem por sergiosistema »

Amigos, obrigado por responderem...
Lucimauro eu utilizo o Rtlink e você pode dar uma olhada no meu bat pra conferir...
Eolo vi num post aqui no fórum que alguém utilizou a OSLIB e parece que deu certo mas eu não consigo encontrar tal LIB, pois o link está quebrado...
Quanto ao arquivo que o Pablo César postou, eu baixei e executei mas não deu resultado. Eu preciso da OSLIB se alguém tiver e quiser postar ficarei muito grato. Ótimo domingo à todos, caros colaboradores.
Anexos
tela bat.jpg
sergiosistema
Usuário Nível 1
Usuário Nível 1
Mensagens: 38
Registrado em: 30 Dez 2013 01:05
Localização: fortaleza-ce

Compilei com Clipper 5.2 e ficou lento

Mensagem por sergiosistema »

Amigos, encontrei a OSLIB aqui neste link http://www.davep.org/clipper/

Compilei o programa com esta LIB e coloquei a linha de comando OL_AutoYield(.t.) logo abaixo da 1a. linha do fonte principal que tem o comando FreeTsLice() mas não adiantou nada. vale ressaltar que a lentidão não é só no momento que grava, mas em todo o funcionamento do programa desde que os dois micros executem a mesma operação (no caso, venda). Sobre os computadores, sei que não é problema neles, as máquinas são boas e se eu testar a versão antiga que era do clipper 5, funciona 100% sem nenhuma lentidão.

Sobre a migração para Harbour nessa altura do campeonato, pra mim não é tão viável, tendo em vista que vou ter que demandar muito tempo para atualizar meu programa, pois já não desenvolvo mais nenhum outro tipo de sistema, apenas realizo pequenas atualizações nos softwares que já criei. Isto se deve ao fato de que minha atuação profissional agora é na área de CFTV, inclusive só atualizei para o 5.2e devido à atender um pedido de cliente que queria ler o peso da balança toledo prix3 de forma automática, e o pessoal aqui do fórum me deu uma grande força.

Se alguém tiver uma dica...
Eu fico no aguardo..
Obrigado
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Compilei com Clipper 5.2 e ficou lento

Mensagem por sygecom »

Acho que sua lentidão deve ter haver com filtro em tabelas, tente postar as rotinas que estão devagar para uma analise melhor.

Sobre migrar para Harbour, você deve levar pouco tempo para fazer isso, visto que o Harbour é compatível com Clipper.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Compilei com Clipper 5.2 e ficou lento

Mensagem por JoséQuintas »

Depende o que chama de lentidão, em que situação isso ocorre.
E depende dos fontes.
Já vi programa que cada exclusão o cara fazia um pack/index.
Também em rede, o processamento de arquivos fica bem mais lento do que local.
E se um terminal bloqueia o arquivo pra inclusão, enquanto não desbloquear o outro fica aguardando.

se o programa usa 100% de CPU, é pra isso que serve OSLIB OU TimeSlic(). Os dois juntos acho que seria exagero.
Sempre usei OSLIB e sempre foi tranquilo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
sergiosistema
Usuário Nível 1
Usuário Nível 1
Mensagens: 38
Registrado em: 30 Dez 2013 01:05
Localização: fortaleza-ce

Compilei com Clipper 5.2 e ficou lento

Mensagem por sergiosistema »

Pessoal, eu já realizei vários testes e não consegui êxito, como disse antes, já uso o timeslic e por orientação do pessoal aqui do fórum, instalei também a oslib mas sem resultados. quero lembrar mais uma vez que este problema de lentidão só ocorre se o programa for compilado com o 5.2e. Vi em alguns tópicos que a melhor solução para redes é instalar o windows server no micro principal e o windows 98 ou xp nas demais estações. O que vocês me sugerem? server 2000 ou 2003 para o servidor? e xp ou 98 para as estações. Grato pela sua atenção. aguardo retorno...
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Compilei com Clipper 5.2 e ficou lento

Mensagem por JoséQuintas »

Usei Clipper 5.2 por muitos anos, de tudo que é jeito, com tudo que é servidor/terminal.
Acho que só não usei em rede/terminal Windows 8.1, porque já havia trocado por Harbour.
Usava Clipper 5.2 + SIXCDX + OSLIB + Blinker 7

Lembro que num determinado cliente, acho que na época ainda era Windows 98, ficou lento nos browses.
Foi na mesma época que passei pra SIXCDX + OSLIB
Sempre pensei que a OSLIB tivesse resolvido o problema, mas quem sabe não foi a SIXCDX.

Se tem certeza dos fontes, só posso sugerir fazer um teste com o mesmo que eu usava:
SIX + OSLIB + Blinker 7

Nota: A SIX usei direto com SIXCDX. Posso estar confundindo mas acho que dava a opção de NTX.

Outra coisa: a rede tem limite. No XP home são quase 5 máquinas, no XP profissional quase 10 máquinas, no Windows 7 quase 20 máquinas.
Esse quase, é porque a Microsoft considera mais coisas além das máquinas na contagem.
Se passar do limite, pode acontecer de esperar a vez.
E pensar que no W98 era ilimitado....

Com o Blinker7 vai ter a vantagem de poder usar até 16mb de memória, ao invés de apenas 640kb.
Mas as libs precisam ser compatíveis.
O uso é igual rtlink, não precisa definir overlays, mas faz diferença ao acrescentar:

blinker clipper symbol off
blinker executable clipper F250
blinker executable extended
blinker executable compress
blinker executable alignment 128

o que significam:
- desativa controle de símbolos do clipper, isso aumenta a capacidade de algumas variáveis, e até de arrays
- embute o SET CLIPPER= no programa
- modo extendido, justamente pra usar 16mb de memória
- compactar exe
- aumentar stack val - isto é um limite de níveis de chamada, e precisa aumentar porque a SIX usa muito isso
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder