C#应用程序是否跟踪其运行时间?

bro*_*oke 102 .net c#

如果确实如此,是否有一种简单的方法可以获得自开始以来的总时间?

Lee*_*Lee 165

System.Diagnostics.Process类具有包含起始时间,你可以用它来计算它已经运行了多长时间的属性:

var current = System.Diagnostics.Process.GetCurrentProcess();
DateTime startedAt = current.StartTime
Run Code Online (Sandbox Code Playgroud)

  • 真棒!得爱.net (6认同)
  • 请注意,`current.StartTime` 是服务器的本地时间,而不是 UTC。 (2认同)

Nik*_*wal 33

使用StopWatch此功能的类.

即使相当过度,即使用户更改时钟,或者即使在此过程中有一些夏令时更改,它也将始终有效.- Julien Lebosquain(评论我的回答.)

  • 即使相当矫枉过正,即使用户更改时钟,这也是唯一能够始终有效的答案,即使在流程运行期间有一些夏令时更改,所以+1. (9认同)
  • +1抵消无意义的downvotes (3认同)

Akh*_*hil 6

您可以Static DateTime Variable为项目创建一个,并将日期时间存储在Main Class的构造函数中.引用此静态变量,并与当前时间进行比较可帮助您实现结果

  • ;)是的,你也可以从现有的变量中读出时间;) (4认同)