Erros, bugs, perguntas - página 2399

 

O terminal desliga quando se muda para outra conta.

Construção: 2007, OS: Win7 x64


 
Vitaly Muzichenko:

O terminal desliga quando se muda para outra conta.

Construção: 2007, OS: Win7 x64

Esperava caracteres personalizados nestas situações, pois tenho tudo nelas.

Provavelmente não os tem. Então o problema é outra coisa.

 
fxsaber:

Se tentar apagar um script em loop, pode provocar o congelamento do terminal durante algum tempo.

Mas, se executar um Expert Advisor em loop no Testador, este congela imediatamente quando se prime o botão Stop.


Porque é que existe um comportamento diferente nestes casos?

Quanto é que faz loop? Existe uma verificação IsStopped() no laço?

Se o terminal estiver pendurado, significa que o fio de interface está bloqueado. O guião tem 3 segundos para parar e, se não houver verificação IsStopped(), continuará a funcionar até ser explicitamente parado. E, neste caso, o fio de interface pode ficar bloqueado.

Um testador irá parar muito mais rapidamente porque não pode desempenhar funções críticas (por exemplo, o comércio). Além disso, o testador é um processo separado que não afecta o terminal do cliente

 
Slava:

Qual é o seu grau de looping? Existe uma verificação IsStopped() no laço?

Estava a falar especificamente de um guião sem esta verificação.

Se o terminal estiver pendurado, significa que o fio de interface está bloqueado. O guião tem 3 segundos para parar e, se não houver verificação IsStopped(), continuará a funcionar até ser dificilmente parado. E, neste caso, o fio de interface pode ficar bloqueado.

O Testador tem uma paragem muito mais rápida, porque não pode desempenhar funções críticas (por exemplo, comércio). Além disso, o testador é um processo completamente separado que não afecta o terminal do cliente

Assim, reparei que as paragens duras no Testador e no Terminal são realizadas de forma diferente.

 
fxsaber:

Pequei sobre os personagens personalizados em situações como esta, pois tenho tudo neles.

Provavelmente não os tem. Então o problema é diferente.

Não há nenhum personalizado.

Se alternar entre contas no mesmo servidor, este fica pendurado por um curto período de tempo e o registo mostra "terminal anormal".

Se alternar entre diferentes servidores (DCs), então fica pendurado durante muito tempo.

Se durante muito tempo funcionar num servidor sem troca, por exemplo 3-5 dias, e depois trocar, então o terminal fica pendurado.

 
Vitaly Muzichenko:


depois fica pendurado por um curto período de tempo e o registo mostra "terminal anormal".


Favor fornecer a entrada de registo completa

 
Slava:

Por favor, dê-me a entrada de registo completa

Estou a ver, o problema deve estar do meu lado e o desligamento é do meu conselheiro.

EJ      2       08:58:24.000    EA_Trade (EURCAD,H1)    Abnormal termination

Certo?

 
Vitaly Muzichenko:

Estou a ver, o problema deve estar do meu lado e o desligamento é do meu conselheiro.

Certo?

Parece uma EA em loop sem verificação IsStopped()
 
Slava:
Parece uma EA em loop sem verificação IsStopped()

Sim, é, mas não em loop, mas cronometrado.

Vou acrescentar IsStopped().

Obrigado!

 
Vitaly Muzichenko:

Sim, é, mas não em loop, mas cronometrado.

Vou acrescentar IsStopped().

Obrigado!

Se o OnTimer não estiver em loop, não deverá haver uma terminação anormal.

Pode dar ao seu perito para verificar o comportamento do terminal do cliente?