My.Computer.Clock.TickCount, propriété
Mise à jour : novembre 2007
Obtient le nombre de millisecondes de l'horloge système de l'ordinateur.
' Usage
Dim value As Integer = My.Computer.Clock.TickCount
' Declaration
Public ReadOnly Property TickCount As Integer
Valeur de retour
Integer qui contient le nombre de millisecondes de l'horloge système de l'ordinateur.
Notes
La propriété TickCount fournit un accès à l'horloge système de l'ordinateur qui fonctionne lorsque l'ordinateur est actif. La résolution de minuterie n'est pas inférieure à 500 millisecondes.
Vous pouvez utiliser cette propriété pour définir le comportement de votre application en fonction de sa durée de fonctionnement, ou vous pouvez l'utiliser pour étiqueter des événements ; ces deux utilisations sont indépendantes de l'horloge de l'ordinateur.
Attention : |
---|
Lorsque la valeur de la propriété TickCount atteint la valeur entière maximale (MaxValue), elle passe à la valeur entière minimale (MinValue), un nombre négatif, puis continue à incrémenter. |
Si l'ordinateur fonctionne en continu, TickCount incrémente de zéro à la valeur entière maximale dans environ 24,9 jours.
La propriété TickCount incrémente uniquement lorsque le système d'exploitation est en cours d'exécution ; elle s'arrête lorsque l'ordinateur active certains modes d'économie d'énergie, par exemple la mise en veille ou la mise en veille prolongée. La propriété TickCount n'est pas liée au paramètre de l'horloge de l'ordinateur.
Utilisez la propriété My.Computer.Clock.LocalTime ou My.Computer.Clock.GmtTime pour obtenir la date et l'heure locales actuelles sur cet ordinateur.
La propriété My.Computer.Clock.TickCount a le même comportement que la propriété Environment.TickCount.
Exemple
L'exemple suivant utilise la propriété My.Computer.Clock.TickCount pour exécuter une tâche dans une boucle pendant un nombre de secondes spécifique, même si l'horloge système de l'ordinateur change pendant son exécution.
Public Sub LoopTask(ByVal secondsToRun As Integer)
Dim startTicks As Integer = My.Computer.Clock.TickCount
Do While IsTimeUp(startTicks, secondsToRun)
' Code to run for at least secondsToRun seconds goes here.
Loop
End Sub
Private Function IsTimeUp( _
ByVal startTicks As Integer, _
ByVal seconds As Integer _
) As Boolean
' This function throws an overflow exception if the
' tick count difference is greater than 2,147,483,647,
' about 24 days for My.Computer.Clock.TickCount.
' Use UInteger to simplify the code for roll over.
Dim uStart As UInteger = _
CUInt(CLng(startTicks) - Integer.MinValue)
Dim uCurrent As UInteger = _
CUInt(CLng(My.Computer.Clock.TickCount) - Integer.MinValue)
' Calculate the tick count difference.
Dim tickCountDifference As UInteger
If uStart <= uCurrent Then
tickCountDifference = uCurrent - uStart
Else
' Tick count rolled over.
tickCountDifference = UInteger.MaxValue - (uStart - uCurrent)
End If
' Convert seconds to milliseconds and compare.
Return CInt(tickCountDifference) < (seconds * 1000)
End Function
Configuration requise
Espace de noms :Microsoft.VisualBasic.Devices
Classe :Clock
Assembly : bibliothèque runtime Visual Basic (dans Microsoft.VisualBasic.dll)
Disponibilité par type de projet
Type de projet |
Disponible |
---|---|
Application Windows |
Oui |
Bibliothèque de classes |
Oui |
Application console |
Oui |
Bibliothèque de contrôles Windows |
Oui |
Bibliothèque de contrôles Web |
Oui |
Service Windows |
Oui |
Site Web |
Oui |
Autorisations
Aucune autorisation n'est requise.