Wspieram w naszej organizacji oprogramowanie, które ma wpływ na wydajność aplikacji, w szczególności na otwieranie aplikacji (to oprogramowanie do zapobiegania utracie danych, które wstrzykuje się do procesów, aby obserwować dane opuszczające organizację).
Chciałem wykonywać testy aplikacji otwierających się w milisekundach, bez zainstalowanego oprogramowania, najlepiej pewnego rodzaju zautomatyzowanego procesu uruchamiania aplikacji i czasu jej uruchamiania. Czy jest jakiś sposób, aby to zrobić precyzyjnie, np. W Powershell?
performance
powershell
Nex Terren
źródło
źródło
procmon
. Gdzieś pomiędzy, możesz użyćsysmon
i filtrowanie procesu tworzenia / kończenia reguł.Odpowiedzi:
Możesz użyć Klasa procesu (System.Diagnostics) w .NET do pomiaru czasu wykonania fragmentu kodu.
Poniższy przykładowy kod używa tej klasy do zmierzenia komendy PowerShell.
Funkcja benchmarkingu PowerShell. Lub odpowiednik systemu Unix w systemie Windows
time
dowództwo. - GitHubźródło
Powinieneś spróbować
Measure-Command
. Dostarczam stas, które wyglądają tak:Składnia wygląda tak
Measure-command {dir c:\ /s}
źródło
Start-Process -Wait
zamiast. Ostatecznie, nawet w taki sposób, że będziesz dużo monitorować. Przeczytaj mój komentarz, Powershell nie jest właściwym narzędziem do tego zadania (może pomóc zautomatyzować sugestie w komentarzach, ale nie może monitorować uruchamiania procesu)