Página 1 de 1

Harbour - demora no retorno de file() em rede

Enviado: 17 Jan 2016 19:01
por ANDRIL
Pessoal, estou intrigado com a demora da verificação da existência de um arquivo em rede.
Estou usando o AcbrMonitorPlus em um máquina onde é o servidor. De outra máquina envio o ENT.TXT e o monitor recebe e começa o processamento, nisso meu sistema monitora a existência do arquivo SAI.TXT, assim que estiver no diretório saio do loop e leio o retorno. No caso, do código abaixo, defini 30 segundos máximos de espera, geralmente o arquivo é criado em 3 a 4 segundos na pasta do servidor (isso eu mesmo vi) só que file() só retorna .T. quando esta em 11 segundos.

Código: Selecionar todos

nCounter=1
arqsai="\\SERVIDOR\ACBR\SAI.TXT"

do while nCounter<=30
	if file(arqsai)
	exit
	endif
	@maxrow(),00 say padr(">> S@T Aguardando retorno Acbr... "+alltrim(str(nCounter))+"/30 ",80) colo "gr+/n"
	nCounter++
	inkey(1.0)
enddo
Já usei rede WIFI, também cabeada, desativei os ANTI-VIRUS e permanece a mesmo tempo de resposta. Quando executo os na máquina servidora o tempo é bem menor.

Agora fiquei em dúvida se o problema só ocorre aqui na minha rede ou é um "problema" da função no Harbour?
Até+

Harbour - demora no retorno de file() em rede

Enviado: 17 Jan 2016 21:00
por JoséQuintas
Tenho esse problema num servidor W2008.
Se eu acessar as pastas por \\servidor\pasta fica demorado.
Se eu acessar o mesmo local mapeado como H:, vai rapidinho.
Sempre pensei que fosse por causa da segurança da rede.
Só uso mapeado.

Como mapeado funciona, nunca me preocupei em pesquisar.

Harbour - demora no retorno de file() em rede

Enviado: 17 Jan 2016 23:24
por ANDRIL
José, não testei mapeado, vou testar e verificar se melhora. Agradeço sua atenção.
Ate+

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 12:54
por fladimir
Se não me falha a memória tb tem algo q possa ser feito a nível de Registro do Windows com relação a este tempo de verificação além tb da questão de desabilitar o CACHE do HD.

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 13:23
por ANDRIL
JoséQuintas escreveu:Se eu acessar o mesmo local mapeado como H:, vai rapidinho
É aqui não foi, demorou o mesmo tempo e o mais impressionante, o SAT começou a não validar o CFe acusando ERRO NA EMISSAO: 1999: Rejeicao: Erro nao identificado vai entender. Tive que voltar ao caminho de rede mesmo.
fladimir escreveu:tb da questão de desabilitar o CACHE do HD
Foi a primeira opção em que pensei, mais não melhorou. Não cheguei a reiniciar o PC, acho também que não seria necessário.

Bom continuo sem entender...
Obrigado pela ajuda.
Ate+

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 15:36
por fladimir
ANDRIL e com relação a algo no REGISTRO do windows vc chegou a pesquisar?

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 16:05
por ANDRIL
fladimir escreveu:relação a algo no REGISTRO do windows vc chegou a pesquisar
Não faço nem idéia, tem alguma dica do que configurar?
Ate+

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 21:48
por sygecom
De uma olhada
viewtopic.php?f=53&t=11773&hilit=registro#p67358

Harbour - demora no retorno de file() em rede

Enviado: 18 Jan 2016 23:18
por alxsts
Olá!

Já tentou usar a função abaixo, nativa do Harbour?

Código: Selecionar todos

HB_FileExists
Tests for the existence of a file

Syntax

      HB_FileExists( <cFileSpec> ) --> <lExist>

Harbour - demora no retorno de file() em rede

Enviado: 19 Jan 2016 08:42
por ANDRIL
alxsts, também tentei sua dica, permanece a mesma demora. Realmente é algo vinculado ao Servidor, quanto a colocação da chave "EnableOpLocks"=dword:00000000 para "EnableOpLocks"=dword:00000001 não encontrei no meu WIN7, já que a dica era para WIN2008.
Agradeço a ajuda.
Ate+