Sto lavorando con .NET ma ho bisogno di comunicare con un servizio di registrazione, basato su unix, che si aspetta secondi e microsecondi dal momento dell'epoca Unix. I secondi sono facilmente recuperabili fare qualcosa di simile:Esiste un equivalente di "gettimeofday" in .NET
DateTime UnixEpoch = new DateTime(1970, 1, 1);
TimeSpan time = DateTime.UtcNow() - UnixEpoch
int seconds = (int) time.TotalSeconds
tuttavia, non sono sicuro come calcolare i microsecondi. Potrei usare la proprietà TotalMilliseconds e convertirla in microsecondi ma credo che sconfigge lo scopo di usare i microsecondi come misura precisa. Ho esaminato l'uso della classe StopWatch ma non mi sembra di poterla seminare (UNIX Epoch per esempio).
Grazie.
Questa sarebbe stata la mia risposta, ma non conoscevo la risoluzione di una zecca. Fai questo. Tranne, dal momento che 100ns = .1us, non dovresti dividere le zecche per 10 per ottenere microsecondi? – KeithS
Questa è la risposta migliore, perché offre la massima precisione disponibile da 'UtcNow()', ma penso che la proprietà 'Ticks' non sia poi così precisa. –
@Keith: Whoops, sì, fissando :) –