Minha abordagem. O núcleo é o motor. - página 148

 
Oleg Papkov:

Pode ser um descasamento: tanto a EA quanto o motor, 1 - ambos transmitem um ao outro, 2 - ambos recebem, seus ciclos OnTimer estão fora de sincronia. Esperando o momento da sincronização aleatória para trabalhar normalmente. Poderia ser esta a razão?

A carga do processador é de até 40%. Não é crítico e mal desacelera, mas ainda não gosto. A razão ainda não está clara. A função ResourceReadImage e a inicialização da matriz são lentas dentro do bloco de desenho. Se eu comentar o laço, ele torna mais lento ResourceReadImage, se eu comentar ResourceReadImage, ele torna mais lento o laço. Além disso, separadamente eles carregam o processador em 50%, mas juntos eles carregam o processador em 40%. Que carga...

 

Quero reduzir a freqüência das mensagens de texto entre o motor e o EA para 5 vezes por segundo (200ms). Uma pessoa não tem tempo para entender o significado de mudar os números mais rápido de qualquer maneira. Portanto, a taxa de mudança de 30ms não faz sentido na prática.

Outras mensagens, tais como animações e eventos de controle, chegarão aos 30ms.

 
Реter Konow:
Oleg Papkov:

Pode ser um descasamento: tanto a EA quanto o motor, 1 - ambos transmitem um ao outro, 2 - ambos recebem, seus ciclos OnTimer estão fora de sincronia. Esperando o momento da sincronização aleatória para trabalhar normalmente. Poderia ser esta a razão?

A carga do processador é de até 40%. Não é crítico e mal desacelera, mas ainda não gosto. A razão ainda não está clara. A função ResourceReadImage e a inicialização da matriz são lentas dentro do bloco de desenho. Se eu comentar o laço, ele torna mais lento ResourceReadImage, se eu comentar ResourceReadImage, ele torna mais lento o laço. Além disso, separadamente eles carregam o processador em 50%, mas juntos eles carregam o processador em 40%. Isso não faz sentido nenhum.

Não posso evitá-lo. Eu não sou bom nesse assunto. Que tal o Googling? Busca por "velocidade de recursos mql4".

 
Oleg Papkov:

Não posso ajudá-los com isso. Eu não sou bom nesse assunto. Que tal uma pesquisa da Googl? Busca por "velocidade de recursos mql4".

Obrigado, mas o google não vai ajudar aqui)). Eu quase normalizei a resposta da GUI. Ainda não descobri a razão até o final. Agora vou dividir a taxa de transmissão para diferentes tipos de mensagens, o que eventualmente melhorará ainda mais a comunicação. Então, eu lhe enviarei o novo motor.

 
Реter Konow:

Obrigado, mas o google não vai ajudar aqui). Eu quase normalizei a resposta da GUI. Não entendia totalmente a razão. Agora vou dividir a taxa de bauds para diferentes tipos de mensagens, o que acabará melhorando ainda mais a comunicação. Em seguida, eu lhe deixo cair um novo motor.

Entendi.

 

Bem, não está diminuindo agora. Embora a carga da CPU a 30ms seja de ~40%. Dito isto, é possível que aumente quando a área redesenhada for aumentada (embora não seja certo). Necessidade de verificar com uma mesa grande.

Até agora, este é o resultado do motor com EA no testador, na velocidade de teste 31.

(Clique para ver)


É importante que a carga do processador caia imediatamente quando a janela é fechada.

 
De qualquer forma, eu vou montar - veremos. Demora um pouco de tempo com algumas cópias?
 
Oleg Papkov:
De qualquer forma, eu vou montar e ver. Sem pressa com várias cópias?

Não. Acho que já descobri a razão. Vou dar uma olhada hoje. Então, tornarei possível trabalhar com várias cópias.

 

A velocidade de saída das tabelas é regulada para reduzir a carga ociosa no processador.

Na velocidade máxima de saída dos dados, uma pessoa não tem tempo para avaliar os dados. Havia a necessidade de diminuir o fluxo de dados para melhorar a percepção.

Agora, no menu padrão do Motor há um novo item "Definir Atraso na Mudança de Valores", que traz uma janela com um controle deslizante de velocidade.

Ao mover o controle deslizante, você pode ajustar a velocidade de saída dos dados, e alcançar um ritmo de percepção aceitável para a mudança de valores.

É importante que os valores em si mudem independentemente do controle deslizante, mas a velocidade de saída para as tabelas é definida pelo usuário.


 
Реter Konow:

A velocidade de saída das tabelas é regulada para reduzir a carga ociosa no processador.

Na velocidade máxima de saída dos dados, uma pessoa não tem tempo para avaliar os dados. Há uma necessidade de diminuir o fluxo de dados para melhorar a percepção.

Agora, no menu padrão do Motor há um novo item "Controlador de Velocidade de Mudança de Valores", que traz à tona uma janela com o controlador de velocidade.

Ao mover o controle deslizante, você pode ajustar a velocidade de saída dos dados e alcançar um ritmo de percepção aceitável para a mudança de valores.

É importante que os próprios valores mudem independentemente do controle deslizante, mas a velocidade de saída das tabelas é definida pelo usuário.


Normalmente é costume mover o controle deslizante para a esquerda para diminuir valores e para a direita para aumentar valores. Você tem o inverso. Verdadeiramente Nikolai insinuou - você tem tudo em protesto contra tudo o que é geralmente aceito.