A jeśli tak, to czy istnieje łatwy sposób na uzyskanie całkowitego czasu od jego rozpoczęcia?
A jeśli tak, to czy istnieje łatwy sposób na uzyskanie całkowitego czasu od jego rozpoczęcia?
Odpowiedzi:
System.Diagnostics.ProcessKlasa ma właściwość zawierającą czas rozpoczęcia za pomocą którego można obliczyć, jak długo to został uruchomiony:
var current = System.Diagnostics.Process.GetCurrentProcess();
DateTime startedAt = current.StartTime
current.StartTimejest to czas lokalny serwera, a nie UTC.
Użyj StopWatchklasy dla tej funkcji.
Nawet jeśli jest to dość przesada, zawsze będzie działać, nawet jeśli użytkownik zmieni zegar lub nawet jeśli podczas procesu nastąpi zmiana czasu letniego. - Julien Lebosquain (komentarz do mojej odpowiedzi.)
Możesz mieć Static DateTime Variabledla swojego projektu i przechowywać datę i godzinę w konstruktorze swojej klasy głównej. Odwołanie się do tej zmiennej statycznej i porównanie z bieżącym czasem pomaga osiągnąć wynik