MT5 e velocidade em ação - página 53

 
Roman:

Como está, estou pingando o servidor, a uma certa freqüência, sem atraso.

Mais de 16 ms? Que tipo de servidor? Para que serve o ping tão freqüentemente?

 
fxsaber:

Enviou isto para o PM.

Se você pressionar CTRL+BREAK enquanto compila a 22%, ME fica pendurado.

 
Andrey Khatimlianskii:

Mais de 16 ms? Que tipo de servidor é este? Qual é o objetivo de tais pings frequentes?

O ponto não é 16ms, é um loop sem atraso.
Ele lê um soquete e pinta o batimento cardíaco.

 
Roman:

O ponto não é 16ms, é um loop sem atraso.
Ele lê um soquete e pinta o batimento cardíaco.

Entendi, lendo uma tomada.

Então por que escorregar? Ou a leitura sem demora é uma coisa ruim?

Não consigo entender o ritmo de batimento cardíaco a este ritmo (

 
Andrey Khatimlianskii:

Estou vendo, lendo uma tomada.

Por que escorregar então? Ou a leitura sem demora é uma coisa ruim?

Não consigo entender o ritmo de batimento cardíaco a este ritmo (

Então, para que serve uma macro?
O soquete é lido em loop sem atraso, e obatimento cardíaco é executado com freqüência definida no mesmo loop sem atraso.
O deslize não tem nada a ver com isso, escrevi um deslize como parte dele, pode vir a ser útil.
O objetivo da macro é definir a freqüência de alguma execução de código no laço sem qualquer atraso.
Não necessariamentebatimento cardíaco. Você pode fazer qualquer macros com
freqüência diferente e elas serão executadas de forma diferente no loop sem nenhum atraso.
Por exemplo, Nikolai escreveu uma aula para a OnTimer. https://www.mql5.com/ru/code/31306
E aqui para o loop, que pode descer para microssegundos.

Multi Timer
Multi Timer
  • www.mql5.com
Данная библиотека Вам пригодится, когда Вам необходимы несколько таймеров с независимой обработкой и неконфликтующие между собой. Для работы с данной библиотекой важно запомнить следующие правила: В теле вашей программы не должно быть функции OnTimer , т.к. эта функция уже присутствует в файле Timer.mhq Не надо создавать никаких экземпляров...
 
Roman:

Então a macro é para quê?
O soquete é lido em um loop sem atraso, e obatimento cardíaco é executado a uma certa freqüência no mesmo loop sem atraso.
Slip não tem nada a ver com isso, eu escrevi que também escrevi um deslize, pode vir a ser útil.
O objetivo da macro é definir a freqüência de alguma execução de código no laço sem qualquer atraso.
Não necessariamentebatimento cardíaco. Você pode fazer qualquer macros com
freqüência diferente e elas serão executadas de forma diferente no loop sem nenhum atraso.
Por exemplo, Nikolai escreveu uma aula para a OnTimer. https://www.mql5.com/ru/code/31306
E aqui para o loop, que pode descer para microssegundos.

Então, era disso que se tratava:

while ( true )
{
   static ulong prev = 0;
   if ( GetMicrosecondsCount() - prev >= InpPause_msc )
   {
     prev = GetMicrosecondsCount();
     // do something
   }

?


Então, ainda não está claro para que serve o deslizamento do microssegundo. Aparentemente, é apenas "extra". Bem, que seja )

 
Andrey Khatimlianskii:

Então, era disso que se tratava:

?

Então ainda não está claro porque o microssegundo escorrega. Aparentemente, é apenas "extra". Bem, que seja )

Bem, você também pode escrever dessa maneira. Eu só o fiz através de um interruptor e de uma macro.
Em seu exemplo, há duas chamadas para GetMicrosecondsCount enquanto no meu há uma.
Sim, então o deslizamento de microssegundos pode vir a ser útil neste loop.
Apenas o fato de que é possível um deslizamento de microssegundos.

 
Andrey Khatimlianskii:

Entendi, lendo uma tomada.

Por que escorregar então? Ou a leitura sem demora é uma coisa ruim?

Eu não consigo entender o significado de batimento cardíaco com tal freqüência (

Neste caso, o deslize é de todo prejudicial. Porque dá prioridade a outro fio e abranda seu próprio fio.

 
Roman:

Bem, você poderia escrever dessa forma. Acabei de fazê-lo com chave e macro.
E em seu exemplo há duas chamadas para GetMicrosecondsCount, no meu há uma.
E sim, deslize também, se o deslizamento de microssegundos for de alguma utilidade neste loop.
Apenas o simples fato de que um deslizamento de microssegundo é possível.

Não é possível

 
Slava:

Impossível

OK, deixe-me reformular a frase. Dentro de mql aproximadamente possível, dependendo da velocidade do relógio do processador.
E quanto ao PWM? -Um sinal de pulso de freqüência constante e ciclo de trabalho variável.
Isso não estabelece uma constante?

Razão: