Domanda

Se corro qualcosa come sonno (10000), e le variazioni di clock di sistema durante che, sarà il filo ancora sonno per 10 secondi di tempo di orologio a muro, o meno o di più? Cioè fa i sleep () millisecondi funzione di convertire in zecche hardware?

È stato utile?

Soluzione

Il sonno () è indipendente dal tempo di orologio a muro. Si basa sullo stesso timer che viene utilizzato per la pianificazione thread.

sarà per lo più a dormire esattamente 10 secondi, però, a causa della frequenza del clock di sistema e quando si effettivamente ottenere pianificato per l'esecuzione dopo gli trascorso timeout.

Altri suggerimenti

Non è documentato da nessuna parte che io sappia, ma sì, si può tranquillamente assumere così. Sarebbe abbastanza dirompente se così non fosse, le transizioni di luce del giorno accadono due volte l'anno. E ' è documentato per la funzione del kernel equivalente, l'argomento Intervallo di KeDelayExecutionThread:

Specifica il tempo assoluto o relativo, in unità di 100 nanosecondi, per i quali l'attesa è che si verifichi. Un valore negativo indica il tempo relativo. tempi di scadenza Absolute Track eventuali cambiamenti nel tempo del sistema; tempi di scadenza relativi non sono influenzati dalle variazioni di tempo del sistema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top