Bir C # uygulaması ne kadar süredir çalıştığını izliyor mu?


102

Ve eğer öyleyse, başladığından beri toplam süreyi elde etmenin kolay bir yolu var mı?


3
Uygulamanız mı yoksa başka bir uygulama mı? WMI'nin bunun gibi bir şeyi izleyebileceğine inanıyorum, ancak kendi uygulamanızsa, başlangıçta tarihi almak çok daha kolay.
Ry-

Yanıtlar:


165

System.Diagnostics.ProcessSınıf Eğer Çalışıyorsa ne kadar süredir hesaplamak için kullanabileceğiniz başlangıç zamanı içeren bir özelliği vardır:

var current = System.Diagnostics.Process.GetCurrentProcess();
DateTime startedAt = current.StartTime

6
Harika! Gotta love .net
kırıldı

1
Bunun current.StartTimeUTC değil, sunucunun yerel saati olduğunu unutmayın.
George

33

StopWatchBu özellik için sınıfı kullanın .

Oldukça abartılı olsa bile, kullanıcı saati değiştirse veya işlem sırasında bazı gün ışığından yararlanma değişiklikleri olsa bile her zaman çalışır. - Julien Lebosquain ( Cevabıma yorum yapın.)


9
Oldukça abartılı olsa bile, kullanıcı saati değiştirse bile, işlem sırasında bazı gün ışığından yararlanma değişiklikleri olsa bile, +1 her zaman işe yarayacak tek cevap budur.
Julien Lebosquain

1
@JulienLebosquain: Teşekkürler. Ödenmesi gereken kredilerle cevabıma bu noktayı ekleyeceğim.
Nikhil Agrawal

6

Static DateTime VariableProjeniz için bir sahip olabilir ve tarih saatini Ana Sınıfınızın Oluşturucusunda depolayabilirsiniz. Bu Statik Değişkeni referans almak ve mevcut zamanla karşılaştırmak, sonuca ulaşmanıza yardımcı olur


4
;) evet, mevcut değişkenden saati de okuyabilirsiniz;)
TomTom
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.