JavaSystem.NanoTime Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce il valore corrente dell'origine temporale ad alta risoluzione di Java macchina virtuale in nanosecondi.
[Android.Runtime.Register("nanoTime", "()J", "")]
public static long NanoTime();
[<Android.Runtime.Register("nanoTime", "()J", "")>]
static member NanoTime : unit -> int64
Valori restituiti
valore corrente dell'origine temporale ad alta risoluzione Java in esecuzione, in nanosecondi
- Attributi
Commenti
Restituisce il valore corrente dell'origine temporale ad alta risoluzione di Java macchina virtuale in nanosecondi.
Questo metodo può essere usato solo per misurare il tempo trascorso e non è correlato ad alcuna altra nozione di sistema o tempo di orologio a muro. Il valore restituito rappresenta i nanosecondi perché un tempo di origine fisso ma arbitrario (forse in futuro, quindi i valori potrebbero essere negativi). La stessa origine viene usata da tutte le chiamate di questo metodo in un'istanza di una macchina virtuale Java. È probabile che altre istanze di macchina virtuale usino un'origine diversa.
Questo metodo fornisce precisione nanosecondo, ma non necessariamente la risoluzione nanosecondo (ovvero la frequenza con cui il valore cambia) - non vengono effettuate garanzie tranne che la risoluzione è almeno valida come quella di #currentTimeMillis().
Le differenze nelle chiamate successive che durano più di circa 292 anni (2<sup>63</sup> nanosecondi) non calcolano correttamente il tempo trascorso a causa dell'overflow numerico.
I valori restituiti da questo metodo diventano significativi solo quando viene calcolata la differenza tra due valori di questo tipo, ottenuti all'interno della stessa istanza di una macchina virtuale Java.
Ad esempio, per misurare il tempo necessario per l'esecuzione di codice:
{@code
long startTime = System.nanoTime();
// ... the code being measured ...
long estimatedTime = System.nanoTime() - startTime;}
Per confrontare due valori nanoTime
{@code
long t0 = System.nanoTime();
...
long t1 = System.nanoTime();}
uno deve usare t1 - t0 < 0, non t1 < t0, a causa della possibilità di overflow numerico.
Il valore restituito da questo metodo non tiene conto del tempo trascorso durante il sonno profondo. Per le funzionalità di mantenimento del tempo disponibili in Android, vedere android.os.SystemClock.
Aggiunto nella versione 1.5.
per java.lang.System.nanoTime().
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.