Milliseconds
Milliseconds -> Resultado
Parâmetro | Tipo | Descrição | |
---|---|---|---|
Resultado | Integer | ← | Número de milissegundos passados desde que se iniciou o equipamento |
Descrição
Milliseconds retorna o número de milissegundos ( 1milisegundo = 1 milésimo de segundo) passados desde que o equipamento foi iniciado.
O valor devolvido é um inteiro longo de até 2^31 (ao redor de 2 bilhões de milissegundos ou 24 dias). Quando a máquina estiver funcionando durante mais de 24 dias, o número fica negativo.
O propósito do comando é medir curtos períodos de tempo com uma alta precisão. Uma gama de 24 dias é mais que suficiente para as comparações, mas deve ter cuidado. Ao comparar valores, sempre trabalhe com a diferença entre dois valores. Nunca compare os valores diretamente, já que um poderia ser negativo e o outro positivo.
Exemplo
O código abaixo espera até 5 segundos para que um registro bloqueado seja desbloqueado ou finalizado:
If(Locked([Table_1]))
$starttime:=Milliseconds
Repeat
DELAY PROCESS(Current process;15)
LOAD RECORD([Table_1])
$waittime:=Milliseconds-$starttime
Until(Not(Locked([Table_1]))|(Process aborted)|($waittime>5000)) //espera 5 segundos máximo
End if
Nota: sempre compare a diferença entre duas chamadas de Milliseconds como é mostrada acima, nunca compare diretamente, por exemplo:
(Milliseconds>($starttime+5000)) //nunca faça dessa maneira, já que um poderia ser positivo e um negativo