os

Veraltete anzeigen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Diese Bibliothek dient derzeit dem Zweck, Informationen über die Systemzeit im UTC-Format bereitzustellen.Es wurde stark von der Standard-Lua-os-Bibliothek isoliert und erlaubt Ihnen nicht, irgendwelche systemändernden Operationen auszuführen.

Zusammenfassung

Funktionen

  • Gibt die verstrichene Zeit in Sekunden seit einer zufälligen Baseline mit Sub-Mikrosekundenpräzision zurück.

  • date(formatString : string,time : number):Dictionary

    Formatiert den angegebenen String mit Datum-/Zeitinformationen basierend auf der angegebenen Zeit.

  • Gibt die Anzahl der Sekunden von einer Zeit zur anderen zurück.

  • time(time : table):number

    Gibt zurück, wie viele Sekunden seit der Unix-Ära (1. Januar 1970, 00:00:00) unter der aktuellen UTC-Zeit vergangen sind.

Funktionen

clock

Gibt die verstrichene Zeit in Sekunden seit einer zufälligen Baseline mit Sub-Mikrosekundenpräzision zurück.Diese Funktion ist nützlich für den Vergleich von Dauerzeiten zwischen zwei Ereignissen, die auf demselben Computer auftreten, und ist die beste Option für Benchmarking.

Im Gegensatz zu Funktionen wie os.time() oder DateTime.now() verursachen Anpassungen an die Systemuhr (z. B. durch den Benutzer oder NTP) keine Zeitverschiebung nach vorne oder hinten.


-- Notiere die ursprüngliche Zeit:
local startTime = os.clock()
-- Tun Sie etwas, das Sie messen möchten, die Leistung von:
local a, b = 0, 1
for _ = 1, 5000000 do
a, b = b, a
end
-- Maße die Zeit, die es dauerte:
local deltaTime = os.clock() - startTime
print("Elapsed time: " .. deltaTime)
--> Elapsed time: 0.044425600033719 (actual number may vary)

Rückgaben

Formate das angegebene formatString mit Datum-/Zeitinformationen basierend auf der angegebenen Zeit oder wenn nicht bereitgestellt, den Wert, der von os.time() zurückgegeben wird.

Diese Funktion sollte in neuer Arbeit vermieden werden. Stattdessen verwende die DateTime API, die lokalisierte Formate unterstützt.

Die folgenden Spezifikatoren (basierend auf der Funktion strftime) werden unterstützt:


<th>Bedeutung</th>
<th>Beispiel <sup>†</sup></th>
</tr>
</thead>
<tbody>
<tr>
<td>%a</td>
<td>Abgekürzter Werktagsname *</td>
<td>Montag</td>
</tr>
<tr>
<td>%A</td>
<td>Voller Wochentagname *</td>
<td>Montag</td>
</tr>
<tr>
<td>%b</td>
<td>Abgekürzter Monatsname *</td>
<td>Feb</td>
</tr>
<tr>
<td>%B</td>
<td>Vollständiger Monatname *</td>
<td>Februar</td>
</tr>
<tr>
<td>%c</td>
<td>Datum und Zeit *</td>
<td>Mo, 12. Feb. 14:14:35 2024</td>
</tr>
<tr>
<td>%d</td>
<td>Tag des Monats</td>
<td>12</td>
</tr>
<tr>
<td>%H</td>
<td>Stunde, mit 24-Stunden-Uhr</td>
<td>14</td>
</tr>
<tr>
<td>%I</td>
<td>Stunde, mit 12-Stunden-Uhr</td>
<td>02</td>
</tr>
<tr>
<td>%j</td>
<td>Tag des Jahres</td>
<td>043</td>
</tr>
<tr>
<td>%m</td>
<td>Monat</td>
<td>02</td>
</tr>
<tr>
<td>%M</td>
<td>Protokoll</td>
<td>14</td>
</tr>
<tr>
<td>%p</td>
<td>Entweder "AM" oder "PM"</td>
<td>PM</td>
</tr>
<tr>
<td>%S</td>
<td>Sekunde</td>
<td>35</td>
</tr>
<tr>
<td>%U</td>
<td>Wochennummer (erster Sonntag als erster Tag der Woche eins)</td>
<td>06</td>
</tr>
<tr>
<td>%w</td>
<td>Wochentag</td>
<td>1</td>
</tr>
<tr>
<td>%W</td>
<td>Wochennummer (erster Montag als erster Tag der Woche eins)</td>
<td>07</td>
</tr>
<tr>
<td>%x</td>
<td>Datum *</td>
<td>02/12/24</td>
</tr>
<tr>
<td>%X</td>
<td>Zeit *</td>
<td>14:14:35</td>
</tr>
<tr>
<td>%y</td>
<td>Zweistellige Jahr</td>
<td>24</td>
</tr>
<tr>
<td>%Y</td>
<td>Ganzes Jahr</td>
<td>2024</td>
</tr>
<tr>
<td>%z</td>
<td>ISO 8601 Versatz von UTC in der Zeitzone (1 Minute = 1, 1 Stunde = 100)</td>
<td>-0800</td>
</tr>
<tr>
<td>%Z</td>
<td>Zeitzonenname oder Abkürzung *</td>
<td>PST</td>
</tr>
<tr>
<td>%%</td>
<td>Der %-Zeichen</td>
<td>%</td>
</tr>
</tbody>
Spezifikator

:* Dieser Wert kann je nach aktuellem Lokal variieren.

† Das angegebene Beispiel ist für den 12. Februar 2024 (Montag) um 2:14:35 PM (14:14:35), ausgeführt mit der lokalen Zeit "en-us" im Pazifischen Standardzeit (PST).

Wenn die bereitgestellte formatString genau "*t" (lokale Zeit) oder "!*t" (UTC-Zeit) ist, gibt diese Funktion stattdessen ein Wörterbuch zurück, das die folgenden Komponenten enthält, die normalerweise in den Spezifizierungen oben verfügbar sind.


<th>Typ</th>
<th>Beschreibung</th>
</tr>
</thead>
<tbody>
<tr>
<td>jahr</td>
<td>zahl int</td>
<td>Eine Zahl, die das aktuelle Jahr der aktuellen Ära beschreibt (z. B. 2017)</td>
</tr>
<tr>
<td>monat</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 1 und 12 (ab Januar) die den aktuellen Monat beschreibt.</td>
</tr>
<tr>
<td>wday</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 1 und 7 (ab Sonntag) die den aktuellen Wochentag beschreibt.</td>
</tr>
<tr>
<td>tageszeit</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 1 und 366, die beschreibt, wie viele Tage wir im Jahr sind.Es kann 366 Tage geben, wenn es ein Sprungjahr ist.</td>
</tr>
<tr>
<td>wochentag</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 1 und 31, die den aktuellen Tag des Monats beschreibt.</td>
</tr>
<tr>
<td>stunde</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 1 und 24, die die aktuelle Stunde des Tages beschreibt.</td>
</tr>
<tr>
<td>min</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 0 und 59, die die aktuelle Minute der Stunde beschreibt.</td>
</tr>
<tr>
<td>sek</td>
<td>zahl int</td>
<td>Eine Zahl zwischen 0 und 60, die die aktuelle Sekunde der Stunde beschreibt.(60 weil die Funktion beschrieben wird, um Sprungsekunden anzuzeigen, aber in der Praxis ist es wahrscheinlich nicht).</td>
</tr>
<tr>
<td>isdst</td>
<td>bool</td>
<td>Ein boolescher, der beschreibt, ob die Tageslichteinsparungszeit derzeit aktiv ist.</td>
</tr>
</tbody>
Bereich

Parameter

formatString: string

Muss entweder "*t" oder "!*t" sein.

time: number

Der Zeitwert zum Formatieren.

Rückgaben

difftime

Gibt die Anzahl der Sekunden von t1 bis t2 zurück.Der Unterschied wird berechnet, unter der Annahme, dass t1 und t2 korrekt in die time_t-Format umgewandelt werden.

Parameter

t2: number
t1: number

Rückgaben

time

Gibt zurück, wie viele Sekunden seit der Unix-Ära (1. Januar 1970, 00:00:00) unter der aktuellen UTC-Zeit vergangen sind.Wenn eine Tabelle in ähnlicher Weise formatiert bereitgestellt wird, wie sie von os.date() zurückgegeben wird, gibt sie stattdessen die Anzahl der Sekunden seit dieser Zeit zurück.

Beachten Sie, dass die zurückgegebene Zeit die lokale Uhr des Geräts verwendet.Die meisten Betriebssysteme synchronisieren ihre lokale Zeit automatisch gegen Online-Zeitserver, sodass dies innerhalb weniger hundert Millisekunden sein sollte.Benutzer können jedoch das Synchronisierungsverhalten leicht deaktivieren und die Systemzeit auf alles einstellen, was sie wollen; für die synchronisierte Zeit zwischen Client und Server verwenden Sie stattdessen Workspace:GetServerTimeNow().

Diese Funktion sollte in neuer Arbeit vermieden werden. Stattdessen verwende die DateTime API, die lokalisierte Formate unterstützt.

Wenn du die Zeit genau zwischen zwei Punkten in der Zeit messen musst, wie beim Testen Erfüllung, verwende stattdessen os.clock().

Parameter

time: table

Ein Wörterbuch-Tab, der eine bestimmte Zeit beschreibt, ähnlich wie die von os.date() zurückgegebene Zeit. Wenn nicht bereitgestellt, verwendet er die aktuelle UTC-Zeit.

Standardwert: UTC time

Rückgaben