Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Milliseconds
|
Milliseconds -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
Résultat | Entier long |
![]() |
Nombre de millisecondes (1000ème de seconde) écoulées depuis le démarrage de la machine | |||||
Milliseconds retourne le nombre de millisecondes (1 milliseconde = 1/1000ème de seconde) écoulées depuis le démarrage de la machine.
La valeur retournée est un entier long signé allant jusqu'à 2^31 (environ 2 milliards de millisecondes ou 24 jours). Lorsque la machine est lancée depuis plus de 24 jours, la valeur devient négative.
Le but de la commande est de mesurer de courtes périodes de temps avec une très grande précision. Une plage de 24 jours est suffisamment longue pour effectuer des comparaisons, mais il est important de prendre des précautions. Lors de la comparaison de valeurs, travaillez systématiquement avec les différences entre les valeurs. Ne comparez jamais les valeurs directement, l'une d'elles pouvant être négative et l'autre positive.
Le code suivant attend jusqu'à 5 secondes qu'un enregistrement soit déverrouillé :
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)) //patientez 5 secondes maximum
End if
Note : Pensez à toujours comparer la différence entre deux appels de Milliseconds tel qu'indiqué ci-dessus, et à ne jamais faire de comparaison directe, comme par exemple :
(Milliseconds>($starttime+5000)) // ne suivez jamais cet exemple, l'une des valeurs pouvant être positive et l'autre négative
Produit : 4D
Thème : Dates et heures
Numéro :
459
Créé : 4D v6
4D - Langage ( 4D v20 R7)