os

Visualizza obsoleti

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Questa libreria attualmente serve lo scopo di fornire informazioni sull'ora del sistema nel formato UTC.È stato fortemente sandboxato dalla libreria standard Lua os e non ti consente di eseguire operazioni che alterino il sistema.

Sommario

Funzioni

  • Restituisce il tempo trascorso in secondi da un baseline arbitraria con precisione sub-microsecondaria.

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

    Formatta la stringa data con informazioni sulla data/ora in base al tempo fornito.

  • Restituisce il numero di secondi da un momento all'altro.

  • time(time : table):number

    Restituisce quanti secondi sono passati dall'epoca Unix (1 gennaio 1970, 00:00:00) sotto l'attuale orario UTC.

Funzioni

clock

Restituisce il tempo trascorso in secondi da un baseline arbitraria con precisione sub-microsecondaria.Questa funzione è utile per confrontare le durate tra due eventi che si verificano sullo stesso computer e è la migliore opzione per il benchmarking.

A differenza di funzioni come os.time() o DateTime.now(), gli aggiustamenti all'orologio del sistema (come da parte dell'utente o di NTP) non causano il salto del tempo in avanti o indietro.


-- Registra il tempo iniziale:
local startTime = os.clock()
-- Fai qualcosa che vuoi misurare le prestazioni di:
local a, b = 0, 1
for _ = 1, 5000000 do
a, b = b, a
end
-- Misura la quantità di tempo ciò ha richiesto:
local deltaTime = os.clock() - startTime
print("Elapsed time: " .. deltaTime)
--> Elapsed time: 0.044425600033719 (actual number may vary)

Restituzioni

Formatta il dato formatString con informazioni sulla data/ora in base al tempo fornito, o se non fornito, il valore restituito da os.time() .

Questa funzione dovrebbe essere evitata nel nuovo lavoro. Invece, usa l'API DateTime , che supporta la formattazione localizzata.

Sono supportati i seguenti specificatori (basati sulla funzione strftime di C):


<th>Significato</th>
<th>Esempio <sup>†</sup></th>
</tr>
</thead>
<tbody>
<tr>
<td>%a</td>
<td>Nome abbreviato del giorno lavorativo *</td>
<td>Lun</td>
</tr>
<tr>
<td>%A</td>
<td>Nome completo della giornata lavorativa *</td>
<td>Lunedì</td>
</tr>
<tr>
<td>%b</td>
<td>Nome del mese abbreviato *</td>
<td>Febbraio</td>
</tr>
<tr>
<td>%B</td>
<td>Nome del mese completo *</td>
<td>Febbraio</td>
</tr>
<tr>
<td>%c</td>
<td>Data e ora *</td>
<td>Lun Feb 12 14:14:35 2024</td>
</tr>
<tr>
<td>%d</td>
<td>Giorno del mese</td>
<td>12</td>
</tr>
<tr>
<td>%H</td>
<td>Ora, utilizzando l'orologio a 24 ore</td>
<td>14</td>
</tr>
<tr>
<td>%I</td>
<td>Ora, utilizzando l'orologio a 12 ore</td>
<td>02</td>
</tr>
<tr>
<td>%j</td>
<td>Giorno dell'anno</td>
<td>043</td>
</tr>
<tr>
<td>%m</td>
<td>Mese</td>
<td>02</td>
</tr>
<tr>
<td>%M</td>
<td>Minuto</td>
<td>14</td>
</tr>
<tr>
<td>%p</td>
<td>Oppure "AM" o "PM"</td>
<td>PM</td>
</tr>
<tr>
<td>%S</td>
<td>Secondo</td>
<td>35</td>
</tr>
<tr>
<td>%U</td>
<td>Numero settimana (primo domenica come primo giorno della settimana uno)</td>
<td>06</td>
</tr>
<tr>
<td>%w</td>
<td>Giornata lavorativa</td>
<td>1</td>
</tr>
<tr>
<td>%W</td>
<td>Numero settimana (primo lunedì come primo giorno della settimana uno)</td>
<td>07</td>
</tr>
<tr>
<td>%x</td>
<td>Data *</td>
<td>02/12/24</td>
</tr>
<tr>
<td>%X</td>
<td>Tempo *</td>
<td>14:14:35</td>
</tr>
<tr>
<td>%y</td>
<td>Anno a due cifre</td>
<td>24</td>
</tr>
<tr>
<td>%Y</td>
<td>Anno completo</td>
<td>2024</td>
</tr>
<tr>
<td>%z</td>
<td>Offset ISO 8601 dall'UTC nella zona temporale (1 minuto = 1, 1 ora = 100)</td>
<td>-0800</td>
</tr>
<tr>
<td>%Z</td>
<td>Nome o abbreviazione della zona temporale *</td>
<td>PST</td>
</tr>
<tr>
<td>%%</td>
<td>Il personaggio %</td>
<td>%</td>
</tr>
</tbody>
Specificatore

:* Questo valore può variare a seconda del locale attuale.

† L'esempio fornito è per il 12 febbraio 2024 (lunedì) alle 2:14:35 PM (14:14:35), eseguito utilizzando il locale "en-us" nel Pacific Standard Time (PST).

Se il fornito formatString è esattamente "*t" (ora locale) o "!*t" (ora UTC), questa funzione restituisce invece un dizionario che contiene i seguenti componenti, che sono normalmente disponibili negli specificatori sopra.


<th>Tipo</th>
<th>Descrizione</th>
</tr>
</thead>
<tbody>
<tr>
<td>year
anno</td>
<td>int</td>
<td>Un intero che descrive l'anno corrente dell'Età Attuale (es. 2017)</td>
</tr>
<tr>
<td>mese</td>
<td>int</td>
<td>Un intero tra 1 e 12 (a partire da gennaio) che descrive il mese attuale.</td>
</tr>
<tr>
<td>wn giorno</td>
<td>int</td>
<td>Un intero tra 1 e 7 (a partire da domenica) che descrive il giorno della settimana attuale.</td>
</tr>
<tr>
<td>ggiorno</td>
<td>int</td>
<td>Un intero tra 1 e 366 che descrive quanti giorni siamo nell'anno.Possono esserci 366 giorni se è un anno bisestile.</td>
</tr>
<tr>
<td>giorno</td>
<td>int</td>
<td>Un intero tra 1 e 31 che descrive il giorno attuale del mese.</td>
</tr>
<tr>
<td>ora</td>
<td>int</td>
<td>Un intero tra 1 e 24 che descrive l'ora attuale della giornata.</td>
</tr>
<tr>
<td>minimo</td>
<td>int</td>
<td>Un intero tra 0 e 59 che descrive il minuto attuale dell'ora.</td>
</tr>
<tr>
<td>sec</td>
<td>int</td>
<td>Un intero tra 0 e 60 che descrive il secondo attuale dell'ora.(60 perché la funzione è descritta per indicare i secondi di salto, ma in pratica probabilmente non lo fa).</td>
</tr>
<tr>
<td>isdst</td>
<td>bool</td>
<td>Un booleano che descrive se il tempo di risparmio della luce del giorno è attualmente attivo.</td>
</tr>
</tbody>
Campo

Parametri

formatString: string

Deve essere o "*t" o "!*t" .

time: number

Il valore del tempo da formattare.

Restituzioni

difftime

Restituisce il numero di secondi da t1 a t2 .La differenza viene calcolata supponendo che t1 e t2 siano correttamente convertiti nel formato time_t.

Parametri

t2: number
t1: number

Restituzioni

time

Restituisce quanti secondi sono passati dall'epoca Unix (1 gennaio 1970, 00:00:00), sotto l'attuale orario UTC.Se fornito un formato di tabella simile a quello restituito da os.date(), restituirà il numero di secondi da quel momento invece.

Nota che il tempo restituito utilizza l'orologio locale del Dispositivo.La maggior parte dei sistemi operativi sincronizza automaticamente il proprio tempo locale contro i server di tempo online, quindi questo dovrebbe essere entro pochi centinaia di millisecondi.Tuttavia, gli utenti possono disabilitare facilmente il comportamento di sincronizzazione e impostare l'ora del sistema su qualsiasi cosa vogliono; per il tempo sincronizzato tra client e Server, usa Workspace:GetServerTimeNow() invece.

Questa funzione dovrebbe essere evitata nel nuovo lavoro. Invece, usa l'API DateTime , che supporta la formattazione localizzata.

Quando è necessario misurare con precisione il tempo trascorso tra due punti nel tempo, come quando si testa le Prestazione, usa os.clock() invece.

Parametri

time: table

Un tavolo dizionario che descrive un momento specifico, simile a quello restituito da os.date() . Se non fornito, utilizza l'attuale ora UTC.

Valore predefinito: UTC time

Restituzioni