Sleep

A função suspende a execução do Expert Advisor corrente ou script por um intervalo especificado.

void  Sleep(
   int  milliseconds      // intervalo
   );

Parâmetros

milliseconds

[in]  Intervalo de atraso em milissegundos.

Valor do Retorno

Sem valor de retorno.

Observação

A função Sleep() não pode ser chamada por indicadores customizados, porque indicadores são executados na thread de interface e não devem ser atrasados. A função foi incorporada para verificar flag interrompido a cada 0.1 segundos.

Exemplo:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- exibimos no comentário no gráfico a contagem regressiva de 10 a 1
   for(int i=10i>0 && !IsStopped(); i--)
     {
      Comment(StringFormat("Wait %u seconds",i));
      Sleep(1000);
     }
//--- escrevemos em um "comentário em andamento" um texto descrevendo a finalidade do script
   string text="This was a test showing how the Sleep() function works";
   string mess="";
   for(int i=0i<(int)text.Length(); i++)
     {
      mess+=ShortToString(text.GetChar(i));
      Sleep(100);
      Comment(mess);
     }
//--- nos despedimos...
   Sleep(1000);
   for(int i=0i<6i++)
     {
      mess=(i % 2 == 0 ? "" : "  Bye!");
      Comment(mess);
      Sleep(300);
     }
//--- apagamos o texto no gráficos
   Comment("");
  }