alfmarc 0 Denunciar post Postado Junho 25, 2005 Tenho uma rotina que executa compactação de arquivos (usando a VCLZip) em uma thread. Quando a compactação está rodando com prioridade Idle e tento abrir um programa grande como o Corel Draw, a carga dele fica extremamente lenta. De 2 ou 3 segundos, sem o compactador funcionando, para mais de um minuto.Checando a prioridade de ambas as threads em tempo de execução verifiquei que estão corretas: compactador=1 (Idle) e corel=8 (normal).Testes com outros programas que usam threads mas que não acessam o HD funcionam como o esperado: o de prioridade mais baixa espera o outro terminar e não o amarra.O que poderia explicar isso?Há alguma solução?GratoAlfeu Compartilhar este post Link para o post Compartilhar em outros sites
alfmarc 0 Denunciar post Postado Junho 26, 2005 A solução (recebi esta informação de um colega):O problema não está na prioridade mas no acesso lento ao disco.Quando dois programas estão tentando acessar pequenos blocos de dados ficará lento para os dois independentemente da prioridade da thread de cada um.A solução é ler grandes blocos de dados na memória e gravá-los de uma vez só. Compartilhar este post Link para o post Compartilhar em outros sites