os
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Cette bibliothèque sert actuellement à l'objectif de fournir des informations sur le temps système au format UTC. Elle a été fortement sandboxée à partir de la bibliothèque Lua standard os et ne vous permet pas d'effectuer d'opérations d'altération système.
Résumé
Fonctions
Renvoie le temps écoulé en secondes depuis un seuil arbitraire avec une précision sub-microseconde.
Formate la chaîne donnée avec des informations sur la date/heure en fonction de l'heure donnée.
Renvoie le nombre de secondes d'un temps à l'autre.
Renvoie le nombre de secondes écoulées depuis l'ère Unix (1er janvier 1970, 00:00:00).
Fonctions
clock
Renvoie le temps écoulé en secondes depuis un temps de base arbitraire avec une précision de sous-microsecondes. Cette fonction est utile pour comparer les durées entre deux événements qui se produisent sur le même ordinateur, et est la meilleure option pour le benchmarking.
Contrairement à avec des fonctions telles que os.time() ou DateTime.now(), les ajustements de l'horloge du système (tels que par l'utilisateur ou NTP) ne provoquent pas le saut du temps vers l'avant ou vers l'arrière.
-- Enregistre le temps initial :local startTime = os.clock()-- Faites quelque chose que vous souhaitez mesurer les performances de :local a, b = 0, 1for _ = 1, 5000000 doa, b = b, aend-- Mesurez le temps que cela vous a pris :local deltaTime = os.clock() - startTimeprint("Elapsed time: " .. deltaTime)--> Elapsed time: 0.044425600033719 (actual number may vary)
Retours
date
Formate le formatString donné avec des informations de date/heure basées sur le temps donné, ou si os.time() n'est pas fourni, la valeur renvoyée par Library.os.time.
Cette fonction devrait être évitée dans le nouveau travail. Au lieu de cela, utilisez l'API DateTime, qui prend en charge la mise en forme locale.
Les spécificateurs suivants (basés sur la fonction strrtime) sont pris en charge :
<tbody><tr><td>%a</td><td>Nom de la semaine abrévié \*</td><td>Lun</td></tr><tr><td>%A</td><td>Nom du jour de la semaine \*</td><td>Lundi</td></tr><tr><td>% b</td><td>Nom du mois abrévié \*</td><td>fév</td></tr><tr><td>% B</td><td>Nom du mois complet \*</td><td>février</td></tr><tr><td>%c</td><td>Date et heure \*</td><td>Lun 12 fév 14:14:35 2024</td></tr><tr><td>%d</td><td>Jour du mois</td><td>12</td></tr><tr><td>%H</td><td>Heure, à l'aide de l'horloge 24 heures</td><td>14</td></tr><tr><td>%I</td><td>Heure, à l'aide de l'horloge de 12 heures</td><td>02</td></tr><tr><td>%j</td><td>Jour de l'année</td><td>043</td></tr><tr><td>%m</td><td>Mois</td><td>02</td></tr><tr><td>%M</td><td>Minute</td><td>14</td></tr><tr><td>%p</td><td>Soit « AM » ou « PM »</td><td>PM</td></tr><tr><td>%S</td><td>Second</td><td>35</td></tr><tr><td>%U</td><td>Semaine numéro (premier dimanche comme premier jour de la semaine un)</td><td>06</td></tr><tr><td>%w</td><td>Jour ouvrable</td><td>1</td></tr><tr><td>%W</td><td>Semaine numéro (premier lundi comme premier jour de la semaine un)</td><td>07</td></tr><tr><td>% x</td><td>Date \*</td><td>02/12/24</td></tr><tr><td>% X</td><td>Temps \*</td><td>14:14:35</td></tr><tr><td>%</td><td>Année à deux chiffres</td><td>24</td></tr><tr><td>%</td><td>Une année</td><td>2024</td></tr><tr><td>%z</td><td>Décalage ISO 8601 du UTC dans la zone temporelle (1 minute = 1, 1 heure = 100)</td><td>800</td></tr><tr><td>%Z</td><td>Nom de la zone temporelle ou abréviation \*</td><td>PST</td></tr><tr><td>aaaa</td><td>Le caractère %</td><td>%</td></tr></tbody>
Spécificateur | Signification | Exemple † |
---|
Cette valeur peut varier en fonction du lieu actuel.
^ L'exemple fourni est pour le 12 février 2024 (lundi) à 2:14:35 (14:14:35), exécutez-le en utilisant le local "en-us" dans le fuseau horaire du Pacifique (PST).
Si la valeur fournie formatString est exactement "*t" (heure locale) ou "!*t" (heure UTC), cette fonction renvoie à la fois un dictionnaire contenant les composants suivants, qui sont normalement disponibles dans les spécificateurs ci-dessus.
<tbody><tr><td>année</td><td>int</td><td>Un nombre décrivant l'année actuelle de la ère actuelle (ex. 2017)</td></tr><tr><td>mois</td><td>int</td><td>Un nombre entre 1 et 12 (débutant en janvier) qui décrit le mois actuel.</td></tr><tr><td>wday</td><td>int</td><td>Un nombre entre 1 et 7 (débutant le dimanche) qui décrit le jour de la semaine actuelle.</td></tr><tr><td>yjour</td><td>int</td><td>Un nombre entre 1 et 366 décrivant le nombre de jours dans l'année. Il peut y avoir 366 jours si c'est une année de saut.</td></tr><tr><td>jour</td><td>int</td><td>Un nombre entre 1 et 31 qui décrit le jour actuel du mois.</td></tr><tr><td>heure</td><td>int</td><td>Un nombre entre 1 et 24 servant à décrire l'heure actuelle de la journée.</td></tr><tr><td>min</td><td>int</td><td>Un nombre entre 0 et 59 servant à décrire la minute actuelle de l'heure.</td></tr><tr><td>seconde</td><td>int</td><td>Un nombre entre 0 et 60 décrivant le seconde actuelle de l'heure. (60 parce que la fonction est décrite pour indiquer les secondes de saut, mais en pratique, il ne l'est probablement pas).</td></tr><tr><td>est</td><td>bulle</td><td>Un booléen décrivant si le jour le temps de l'heure d'été est actuellement actif.</td></tr></tbody>
Champ | Type | Description |
---|
Paramètres
Retours
time
Renvoie le nombre de secondes qui ont passé depuis l'ère Unix (1er janvier 1970, 00:00:00), sous le temps UTC actuel. Si une table est fournie avec une forme de table similaire à celle renvoyée par os.date(), elle renverra le nombre de secondes depuis ce temps au lieu de cela.
Remarquez que le temps renvoyé utilise l'horloge locale de l'appareil. La plupart des systèmes d'exploitation synchronisent automatiquement leur horloge locale contre les serveurs de temps en ligne, donc cela devrait être dans quelques centaines de millisecondes. Cependant, les utilisateurs peuvent facilement désactiver le comportement de synchronisation et définir l'heure système souhaitée ; pour le temps synchronisé entre le client et le serveur, utilisez Workspace:GetServerTimeNow() au lieu de cela.
Cette fonction devrait être évitée dans le nouveau travail. Au lieu de cela, utilisez l'API DateTime, qui prend en charge la mise en forme locale.
Lorsque vous devez mesurer précisément le temps écoulé entre deux points dans le temps, comme lors du test des performances, utilisez os.clock() à la place.