Я использую команду Process.TotalProcessorTime, чтобы получить общее время процесса для этого процесса. Но он не работает должным образом для одного и того же процесса, когда он запускается несколько раз. Может кто-нибудь предоставить правильное решение или предложить новый метод в C #?
Process.TotalProcessorTime
Посмотрите на счетчик производительности% процессорного времени для процесса.Подробности можно найти в - http://pandeysk.wordpress.com/2013/01/02/performance-measurement-in-net/
Вместо этого вы можете прикрепить процесс к perfmon, добавить счетчики производительности и получить время процессора для процесса.
Я думаю, что лучше всего использовать
// Получить все экземпляры «myprocess», фактически запущенные на локальном компьютере.
Process[] LocProcByName = Process.GetProcessesByName("myprocess");
Если вы запускаете приложение несколько раз, все они процессы . Вы пытаетесь записать общее время для приложения? Вам нужно будет постоянно следить за системой и проверять, когда процесс запускается, что непросто. Или вы можете реализовать этот механизм синхронизации в самом приложении.